我正在 Unity3d 中编写一个应用程序,这是一个跑步游戏。现在当我向上跳跃角色(在 y 方向移动它)然后相机旋转,因为我正在使用
transform.LookAt(character)
1.角色正常运行时的第一张图片
2.第二张图是人物跳跃的时候
我希望相机在不旋转的情况下看角色
我正在 Unity3d 中编写一个应用程序,这是一个跑步游戏。现在当我向上跳跃角色(在 y 方向移动它)然后相机旋转,因为我正在使用
transform.LookAt(character)
1.角色正常运行时的第一张图片
2.第二张图是人物跳跃的时候
我希望相机在不旋转的情况下看角色
有几种解决方案。由于您通过 直接操作观察方向transform.LookAt()
,因此您可以简单地更改目标。
LookAt方法有一个重载,可让您指定目标的位置(Vector3
而不是Transform
)。
您可以忽略目标的 y 坐标并选择固定的 y 值:
Vector3 lookAtPosition = character.transform.position;
lookAtPosition.y = fixedYPosition;
transform.LookAt(lookAtPosition);
请注意,上述解决方案仅在角色始终位于同一平面上时才有效(例如,不再有地板、楼梯等)。