How do I make a plane propeller rotate?

Hello devforum, I am making a plane and I need some help making the propeller rotate.

I have tried using an angular velocity, but since the propeller has to be welded to the plane, the angular velocity rotates the whole plane.

Is there any other way of doing this?
Thanks for reading.

3 Likes

You can rotate the C0 of the weld! You’ll have to loop this and you might also need to change what axis the rotation is happening on depending on what it’s welded to.

Weld.C0 = Weld.C0 * CFrame.Angles(0,math.rad(1),0)

3 Likes

Can this be done with weld constraints?

For some reason when I weld the propeller to the base with a weld the properller moves inside the base, it doesn’t happen with weld constranints. And if I try to reposition the part the weld gets destroyed.

I believe there is a way with WeldConstraints, but I use manual welds myself. If you want to use the method I mentioned, you can use this to manually weld 2 parts without changing their position!

return function (part1,part2)
 local weld = Instance.new("ManualWeld")
 weld.Parent = part1
 weld.C0 = part1.CFrame:Inverse() * part2.CFrame
 weld.Part0 = part1
 weld.Part1 = part2
 return weld
end
1 Like

Why does the prop need to be welded?
Can you use a HingeConstraint and have the prop Unanchored?

Will this work with meshparts with unaccurate collisions?

wouldn’t anchoring the part make the plane not move?

With the method I suggested, you can still get accurate collisions with the propeller if you want to. Definitely unanchored, then collisions on. Depending on how the propeller is set up, you will probably need to add a no collision constraint between the propeller and any other part of the plane it’s touching. Particularly if the mesh collisions are a little unruly.

1 Like