繁体   English   中英

使用键盘更改C#中的位移?

[英]Change displacement in C# with keyboard?

如何在C#中使用键盘按下统一更改gameObject的位移? 我尝试使用此方法,但没有任何反应:

if (Input.GetKey(KeyCode.W))
   platform[i, j].transform.position = 
       new Vector3(platform[i, j].transform.position.x, 
                   y *= y,
                   platform[i, j].transform.position.z);

很好,您的代码似乎还可以,但是,如果您的“ y”为1或0,则y * = y将无法仅将gameObject移至Y轴。

在转换中使用Translate方法:

if (Input.GetKey(KeyCode.W))
    platform[i, j].transform.Translate(0,1,0);

该样本将使物体快速向上移动。 如果要向前移动platform[i, j].transform.forward可以使用platform[i, j].transform.forward作为向量。

请参阅有关翻译的文档。 还要注意relativeTo参数。 对于本地空间与世界空间运动很有用。 还要注意样本中deltaTime的用法。

还请注意@csblo的注释,以将该代码放入Update()方法中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM