How to achieve “Starscape” like spaceship movement (rotation and tilt)

Ive tried using body angular velocity and bodygyro with tons of different methods but so far i havent found one that sufficiently replicates what I am trying to achieve (see gif).

I need the ship to turn indefinitely in the direction the mouse is facing, and for there to be a rolling effect left/ right.

bg.CFrame = CFrame.new(part.Position, Vector3.new(MousePos.X,MousePos.Y,MousePos.Z))

I was using this code, but it is more useful for things like helicopters as it faces in the direction you point your mouse, the downsides to this are that it doesnt turn indefinitely unless you lock your camera behind the ship, it faces where your mouse is and as result it sometimes has jolty movement, and you cant rotate on the x axis before it stops at a 360 degree angle, (a limitation of bodygyro i think).

Bodyangularvelocity hasnt worked at all, yet its the only bodymover i can see working for this kind of thing.

I have movement down (forwards, backwards, left right up down etc) but turning is proving to be extremely difficult. Any help appreciated.

3 Likes

I think you only need BodyVelocity and BodyGyro to accomplish what is in that gif. You need to rotate the bg’s angle.

bg.CFrame = CFrame.new(part.Position, Vector3.new(MousePos.X,MousePos.Y,MousePos.Z)) * CFrame.Angles(0, 0, math.rad(-45))

Just test this script it should rotate.

1 Like

that literally is just body velocity and body angular velocity. all they added was that camera fov change

thanks so much man, ive spent a good while trying to achieve this and after a little tweaking of your method ive gotten this:

https://gyazo.com/36399fa2d18e266603dd734a47745302

All I need to do now is tweak some things and im good to go!

Thanks again.