【发布时间】:2014-01-07 19:55:39
【问题描述】:
我正在学习使用 Unity3d,我想对角旋转一个立方体,这样当我按左箭头键 + q 或右箭头键 + w 时,它似乎在对角旋转。谁能帮我查询一下?
这是我目前拥有的:
void Update ()
{
if(Input.GetKey(KeyCode.UpArrow)) //move forward
transform.Translate(Vector3.forward * moveSpeed * Time.deltaTime);
if(Input.GetKey(KeyCode.DownArrow)) //move backward
transform.Translate(-Vector3.forward * moveSpeed * Time.deltaTime);
if(Input.GetKey(KeyCode.LeftArrow)) //turn left
transform.Rotate(Vector3.up, -turnSpeed * Time.deltaTime);
if(Input.GetKey(KeyCode.RightArrow)) //turn right
transform.Rotate(Vector3.up, turnSpeed * Time.deltaTime);
}
【问题讨论】:
-
你的意思是对角线,如在 2 个不同的轴上?
-
您的意思是您所做的
transform.Rotate工作不正常吗?还是别的什么? -
如果我同时按下左箭头键和 q 键,我希望立方体向左上角旋转。我已经尝试过旋转功能:transform.Rotate(rotateAmount ===>这是一个公共 vec3 变量 * Time.deltaTime),但是同时按下两个键时这似乎不起作用。
标签: unity3d