我想作的移動操做方式相似【流星蝴蝶劍】、【龍之谷】、【個人世界第三人稱】的第三人稱操做方式。函數
操做說明:W鍵會朝當前鏡頭方向前進,鼠標控制鏡頭旋轉。this
作前需知(先去稍微瞭解一下比較好):spa
①unity腳本的生命週期3d
②旋轉的歐拉角和四元數orm
③簡單三角函數知識對象
④Unity基本的API(好比this.transform.position爲對象的(x,y,z)座標)blog
第一步:建立一個腳本move,寫上腳本,並賦予個人人物。生命週期
(注意:圖片中的Parva是我給圖片加的水印。)圖片
第二步:給人物添加碰撞器和剛體,並把調整好角度的攝像機賦予人物的myCamera變量it
第三步:WASD讓人物動起來
先添加一個速度變量
寫FixedUpdate()函數 代碼意義都寫在註釋裏了
演示一下,WASD控制人物移動
第四步:讓鏡頭跟着人物移動
添加一個變量
Start()中添加
添加LateUpdate()函數
第五步:鼠標控制鏡頭圍繞人物旋轉
添加變量
修改LateUpdate()
第六步:WASD改變人物的朝向
在FixedUpdate()中添加代碼
第七步:讓人物朝當前鏡頭方向前進
添加變量
在LateUpdate()中添加
在FixedUpdate()中修改
在演示中,我單按住鍵盤的W鍵,並移動鼠標,人物就會朝着鏡頭旋轉的方向前進。
而以前這樣的操做呢,無論鏡頭怎麼旋轉,人物都是朝着世界的正Z軸方向前進。
第八步:讓鍵盤控制的人物的朝向,相對於鏡頭角度進行改變
修改FixedUpdate()中的一行代碼就好了
這樣,人物的移動鏡頭操做就OK了。