簡體   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