我正在尝试用统一的C#制作fps射击游戏,但是我用来改变Y旋转角度的任何功能都不会移动。 我第一次对其进行测试,但是在处理了与此脚本无关的其他内容后一个小时,却突然没有了。我尝试了.Rotate(),localRotation,Quaternion.Eulern,但它什么都没有动。我还检查了一下是否是因为未设置我正在使用的变量,但这是因为。
请帮助!
float mouseX = Input.GetAxis("Mouse X") * Sensitivity * Time.deltaTime;
float mouseY = Input.GetAxis("Mouse Y") * Sensitivity * Time.deltaTime;
xRotation -= mouseY;
xRotation = Mathf.Clamp(xRotation, -90f,90f);
//x
Debug.Log(mouseX);
player.rotation = Quaternion.Euler(0,mouseX,0);
transform.rotation = Quaternion.Euler(0,mouseX,0);
//y
transform.localRotation = Quaternion.Euler(xRotation,0,0);
答案 0 :(得分:0)
xRotation-= mouseY;您将从鼠标X旋转中减去鼠标Y旋转,X和Y是不同的轴!请查阅轮换教程,例如: https://answers.unity.com/questions/288948/rotate-around-local-y-axis.html