在我的等级制度中,我小时候就拿着枪和相机。从图片中可以看出,当相机向上移动时,枪似乎漂浮在空中。我怎样才能使枪相对于相机,以便无论我将其放置在检查器中,它都会粘在相机上?
我不希望它看起来像这样
我希望它看起来像这样,即使向上旋转相机也是如此。
您可以将一个脚本附加到您的枪对象上,该脚本可以执行以下操作:
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;
}
}
据我了解,您希望枪保持为子状态,但您想“锁定”旋转。该脚本将保留枪的旋转,同时还允许您在不锁定位置的情况下平移位置。
在 Start 期间将旋转最初存储为四元数,然后当每帧调用 Update 时,它将把旋转设置为初始四元数。
将来,如果您想将旋转分解为单独的x、y、z,您可以使用transform.rotation.x、y、z锁定某些轴,并将每个轴单独存储为浮点变量。
经过几个小时的搜索,我最终自己弄清楚了。相机连接到的父对象不是统一的形状,因此在旋转相机时会扭曲枪的形状。我只需将父对象的比例设置为 1,1,1,它就按预期工作了。