枪不会以相机的方式停留在相机上
问题描述:
在我的等级系统中,我的枪是我的相机的小孩。从图中可以看出,移动摄像机时,枪会浮在空中。我怎样才能使枪相对于相机,使它坚持相机,但我把它放在检查员?枪不会以相机的方式停留在相机上
我不希望它看起来像这样
我希望它看起来像这样,旋转摄像头提升时也是如此。
答
经过几个小时的搜索,我终于自己搞清楚了。相机连接到的父对象不是一个统一的形状,因此在旋转相机时偏斜了枪的形状。我只是将父对象的比例设置为1,1,1,并且按预期工作。
答
你可以连接到你的枪对象的脚本,做:
using UnityEngine;
using System.Collections;
public class Test : MonoBehaviour {
public Quaternion x;
// Use this for initialization
void Start() {
x = transform.rotation;
}
// Update is called once per frame
void Update() {
transform.rotation = x;
}
}
从我了解你想要的枪仍然是一个孩子,但要“锁定”旋转。这个脚本将保留枪的旋转,同时也让你翻译的位置没有锁定。
在开始时将旋转初始存储为四元数,然后当每帧调用更新时,它将旋转设置为初始四元数。
未来,如果您想将Rotation分解为单独的x,y,z,您可以使用transform.rotation.x,y,z锁定某些轴并将每个单独存储为浮点变量。
您是否在相机上调整了FOV(视场)? – ApolloSoftware
@AololSoftware是的,同样的事情发生 –
所以你想让相机在与飞机垂直的相同旋转中用枪来查看? – ApolloSoftware