I’ve noticed that the Transform and C0 property of a motor visually updates differently.
Consider the code below:
local RUN_SERVICE = game:GetService("RunService")
RUN_SERVICE.Stepped:Connect(function()
workspace.a.Motor6D.C0 = CFrame.new(0, 5, 0)
end)
RUN_SERVICE.Heartbeat:Connect(function()
workspace.a.Motor6D.C0 = CFrame.new()
end)
With this code below, part ‘a’ doesn’t visually separate 5 studs from its origin, as seen below:
Now consider this code:
local RUN_SERVICE = game:GetService("RunService")
RUN_SERVICE.Stepped:Connect(function()
workspace.a.Motor6D.Transform= CFrame.new(0, 5, 0)
end)
RUN_SERVICE.Heartbeat:Connect(function()
workspace.a.Motor6D.Transform= CFrame.new()
end)
When I’m editing the Transform property, you can actually see it visually separate still.
It’s almost as if something happens between “Stepped” and “Heartbeat” that visually renders Transform edits but doesn’t render C0 edits. Can someone please confirm this?
2 Likes
RamJoT
(RamJoT)
December 26, 2019, 11:15am
#2
Do you have this in a test place we could use?
1 Like
NilFloat
(NilFloat)
December 26, 2019, 11:57am
#3
I found a thread that may fix your problem and understnad the difference of C0 and Transform.
C0 and Transform (and C1) are applied in a particular order such that the CFrames of Part0 and Part1 of a Motor6D satisfy this equation:
Part0.CFrame * Motor6D.C0 * Motor6D.Transform = Part1.CFrame * Motor6D.C1
It’s been stated above that Transform is used internally by the Roblox animation system to pose joints. For your custom animation system that you mentioned, you can use Motor6Ds for your joints. You can use C0 and C1 in combination to rig your characters (or objects) so that they are r…
I hope this helps.
1 Like
It did not, sorry. I’m trying to figure out what’s going on internally that causes this behavior.
Eqicness
(Eqic)
July 22, 2022, 9:07pm
#5
Did you find any more information on this? Updating C0 after physics simulation has an effect, but updating Transform after physics simulation has no effect. This makes it hard to sync Motor6D.Transform with other effects in game that need to render later.
1 Like