Is There A SetPrimaryPartCFrame Equivalent Physics Body Mover?

I am using SetPrimaryPartCFrame to move a model and all of the parts within a model. The problem is that SetPrimaryPartCFrame can result in very choppy movement.

Is there an equivalent method for body movers (AlignPosition, etc) that will allow me to move a model and all of its parts like SetPrimaryPartCFrame does? (welding is not an option in my case)

[Edited: More Details]
The parts inside my model are anchored. And some of those parts are CFrame animated. So the goal is to move the model and all of its subparts together. SetPrimaryPartCFrame does the job, but is really choppy at times.

1 Like

you could use tweening here is a tutorial on how to tween models

To my knowledge, no, there is no SetPrimaryPartCFrame equivalent body mover (Also if you cant weld them then you basically can’t use it anyways). You could tween the CFrame of the primary part,

Is there a problem with just putting body movers inside a part in the model?

They need to be welded in order to stay together since bodymovers need the parts to be unanchored.

Try using WeldConstraint combined with TweenService. Tween the root part in order to move one entire model.

1 Like

You can make SetPrimaryPartCFrame smooth by setting up a local script that uses RunService.RenderStepped to run it every frame. (I’ve seen occasional situations where this is somehow still a bit choppy, but I don’t know why.)


I don’t really know why, but sometimes when I use SetPrimartPartCFrame numeric for loops some people crash. I assume it’s due to their client being the one that calculates the physics of the model since they might be the NetworkOwner, but I’m not too sure.

isn’t the biggest gripe with SetPrimaryPartCFrame the floating point errors after a while? :grimacing: or is that not actually a concern in most cases

I’ve never encountered this problem, and I use :SetPrimaryPartCFrame() connected to RenderStepped in a lot of my game. There must be something else going on.

1 Like

I definitely have, it’s just not a reliable way to move objects over the long term.


That’s weird. I use it to move a tram around the map constantly in my game, and to open and close a lot of doors, and this has never been an issue.