-
使用本地坐标而不是世界坐标作为偏移量,因为相对于骨骼一直在运动的spine物体,固定位置的世界坐标约束会让骨骼一直被约束在固定的世界位置上。正确的效果应该是与父骨骼保持一定的相对位置,因此得使用本地坐标
-
// originLocalPosition 是要约束的骨骼的初始位置,localOffset/worldOffset是相对于初始位置的本地/世界偏移,bone是约束骨骼 var localOffset = bone.Parent.WorldToLocal(worldOffset); var position = Vector3.SmoothDamp(_bone.GetLocalPosition(), originLocalPosition + localOffset, ref velocity, smoothTime); bone.X = position.x; bone.Y = position.y; bone.UpdateWorldTransform();
-