我正在制作一个由多个骨骼组成的可弯曲游戏对象。使用一些关节和一些数学计算骨骼位置,这些都是按预期工作的。但我正在努力旋转骨头以面对正确的方向。我设置了骨骼位置,如:
for ( int i = 0; i <= bonesCount; i++ ){
Vector3 newPosition = someFunction();
bones[i].transform.position = newPosition;
}
这是正常的:
但是当可弯曲物体弯曲时,骨骼保持其原始旋转:
我以为我可以在位置Transform.LookAt
的骨骼上使用i
来查看位置i + 1
处的骨骼,但这会产生奇怪的结果:
使用错误的轴(向上,向右或向前)似乎是一个问题。
有什么建议吗? Transform.LookAt
是否使用正确的方法?