我正在开始一个新的unity3d项目,我想知道如何旋转向前移动的宇宙飞船从y轴向左和右。
void Update(){
transform.position += transform.forward * Time.deltaTime * 10f;
if(input.Getkey(KeyCode.LeftArrow))
{
//code for rotate ;
}
}我希望当我按向左箭头键的时候,宇宙飞船从y轴向左旋转,直到箭头键松开。
发布于 2019-01-19 20:48:50
您可能希望将速度和旋转速度声明为浮点数,这样以后就可以轻松地更改它们,但现在您可以这样做了。我左手和右手都做了。
float speed = 10.0f;
float rotateSpeed = 2.0f;
void Update(){
transform.position += transform.forward * Time.deltaTime * speed;
if(Input.GetKeyDown(KeyCode.LeftArrow))
{
//code for rotate
transform.Rotate(vector3.left * Time.deltaTime * rotateSpeed);
}
else if(Input.GetKeyDown(KeyCode.RightArrow))
{
transform.Rotate(vector3.right * Time.deltaTime * rotateSpeed);
}
}如果要相对于世界旋转船舶,请使用:
transform.Rotate(vector3.left * Time.deltaTime * rotateSpeed, Space.World);https://stackoverflow.com/questions/54267132
复制相似问题