I played around with some welding. It doesn't seem to work as I'd expect.
This can be solved:
cf = CFrame such that a.CFrame * cf = CFrame.new(a.Position)
b * cf = a
cf = b:toObjectSpace( a )
I would expect a Weld that of an existing a and b to look like:
w = Instance.new("Weld")
w.Part0 = a
w.Part1 = b
w.C0 = b.CFrame:toObjectSpace( a.CFrame )
w.C1 = a.CFrame:toObjectSpace( b.CFrame )
w.Parent = Game.JointsService
|