我有两个方形的空游戏对象。两者都有一个作为子对象附加的立方体对象。顶部的空游戏对象也被附加为较低的两个子对象。如何旋转顶部的空游戏对象,使内部立方体对象仍在另一个立方体对象上(右图)?
transform.localRotation
当我使用,transform.localEulerAngles
或之类的东西时transform.Rotate
,顶部对象将始终像左图一样旋转。
这种旋转也意味着物体位置的变化。我看到两种方法来解决这个问题:
GameObject
的放置在正确的位置,即交叉点,并将立方体子对象移动其边长的一半,你可以在旋转立方体而不是父对象时获得所需的旋转。如果您需要一个父对象作为独立对象,您可能会引入另一个空对象,例如:在 3ds max 或 blender 等 3d 程序中为您的立方体建模,并将枢轴更改为要旋转的立方体底部,这比编写脚本在旋转时更改位置更容易。