我正在尝试使用我的自定义编辑器围绕它的局部轴旋转对象(在本例中为人形食指)。
public float amount;
void OnGUI() {
amount = EditorGUILayout.Slider("Rotate Amount", amount, 0, 100);
index1.transform.localEulerAngles = new Vector3(0, 0, amount);
}
我遇到的问题是当我移动滑块时,手指向下和向前旋转,因此手指的尖端向外指向,理论上它们应指向肘部。
我认为我在这里使用了错误的转换类型,那么我该如何使用正确的转换呢?
答案 0 :(得分:0)
尝试使用:
index1.transform.Rotate(new Vector3(0, 0, amount), Space.World);
或
index1.transform.Rotate(new Vector3(0, 0, amount), Space.Self);
希望它能解决你的问题:)
答案 1 :(得分:0)
这可能有两个部分:
代码
var currentZEuler = zRotation(this.transform.rotation).eulerAngles.z;
var deltaZEuler = amount - deltaZEuler;
index1.transform.Rotate(0, 0, deltaZEuler, Space.Self);