unity兩個簡單的移動控制

2021-08-21 21:06:25 字數 797 閱讀 7684

在unity中時常需要控制移動,

1.簡單的類似坦克大戰的移動

//速度

float speed = 1.0f;

//按下上

if (input.getkey(keycode.uparrow))

//按下下

if (input.getkey(keycode.downarrow))

//按下左

if (input.getkey(keycode.leftarrow))

//按下右

if (input.getkey(keycode.rightarrow))

在update中新增這段**,可以簡單的控制移動,移動方式類似經典的坦克大戰。

2.上面那個不能滿足大部分的需求

前後鍵行走,左右鍵旋轉,這個的簡單實現:

//旋轉

float steer = 20;//轉速

float x = input.getaxis("horizontal");//獲得橫軸值

transform.rotate(0, x * steer * time.deltatime, 0);//每幀旋轉

//前進後退

float speed = 3.0f;

float y = input.getaxis("vertical");

vector3 s = y * transform.forward * speed * time.deltatime;

transform.position += s;

獲取虛擬軸的值,執行如果想wasd鍵不起作用,可以直接到編輯器裡設定。

unity 實用小技巧(相機跟隨兩個主角移動)

在兩人對戰的遊戲中,有時候我們希望能看清楚兩玩家的狀態,這時我們需要讓相機跟隨玩家,可是我們不能讓相機只跟隨乙個玩家移動,這時我們可以取兩玩家的中點作為相機的位置。方法如下 public transform player1 public transform player2 private vecto...

兩個簡單的迴圈

1.create or replace procedure pro test 01 is begin for aa in select object name from test 01 loop insert into test 02 values aa.object name end loop e...

Unity3D的兩個坑

unity3d雖然做東西便利,也因此帶來兩個很大的坑。其一是因為編輯器很容易關聯不同的指令碼,如果開發者經驗不足,會讓指令碼之間依賴混亂,最後組織結構如同蜘蛛網,修改起來極其麻煩。再微博上經常遇到乙個問題,很多人吐槽,c 指令碼和unityscript指令碼之間不能混用,基本上就是這個問題引起,因為...