我已经开发了一个统一的转轮游戏,我已经完成了编码部分,但是当我将动画应用到我的角色对象(在z轴上旋转)时,相机也随之旋转。 那么,我怎么能停止主旋翼对象的主旋转主旋转。另外我不希望主摄像头的旋转发生任何变化
主摄像机转换: -
我在一个单独的脚本中尝试过的一些代码将它附加到主摄像头: -
任何解决方案?我使用C#scripting
答案 0 :(得分:0)
如果您想确保在渲染帧之前更正旋转,则代码需要位于LateUpdate
。但是你考虑过制作一个单独的“FollowObject”脚本,这样相机就不需要成为子对象吗?您也可以找到它的其他用途。因为除了位置之外你真的不想要父/子关系的任何其他语义。
我不认为你的方向代码是对的。您将距离视为一个角度。 eulerAngles
指的是度x / y / z,而不是方向向量。要使用方向向量,您可以指定transform.forward = direction;
。你究竟想看什么方向?走向什么?每帧相同(任意)方向? transform.LookAt()
和transform.rotation = storedRotation
是解决这些问题的简单方法。
编辑:为了完全清楚,我认为将相机连接到角色是一个坏主意。你可能会遇到生涩的运动和不正确的位置问题。