使用它的方法如下,首先打開Unity游戲引擎編輯器,然后在Project視圖中右鍵選擇Import Package -> Charactr Controller(角色控制器)把它導入我們的工程中。如下圖所示,第一人稱與第三人稱的組建已經(jīng)加入Project視圖中。3rd Person Controller 表示第三人稱控制器,F(xiàn)irst Person Controller表示第一人稱控制器。

如下圖所示,我們將FirstPerson Controller拖拽入Hierarchy(層次視圖)中。由于角色控制器是具有一定物理引擎的,所以一定要將它放在地形或面對象之上,否則當它接收物理效果時發(fā)現(xiàn)地面沒有東西支撐它,它就會掉下去。然后運行游戲你就會發(fā)現(xiàn)和CS中的第一人稱效果非常相像, W、S、A、D移動人物行走,移動鼠標更改行走的方向,空格鍵人物會跳躍。
第一人稱視角的實現(xiàn)原理是在游戲場景中創(chuàng)建了一個膠囊體的游戲?qū)ο螅⑶医o膠囊體對象身上綁定了一個攝像機,攝像機對象如下圖所示,它綁定在”Person Controller”中。這時場景中默認的攝像機就會失效,可以直接刪掉默認的攝像機。通過按鍵控制這個膠囊體移動,通過鼠標修改膠囊體的朝向,此時你就會發(fā)現(xiàn)第一人稱視角已經(jīng)完全實現(xiàn),目前為止我們不需要編寫一行代碼。目前場景中的天空盒子我是使用skyBox組件綁定在攝像機中,因為第一人稱視角的攝像機對象在”Person Controller”中,所以需要將SkyBox組件綁定在這個攝像機中,如果綁定在默認攝像機中那么你將不會看到天空的效果。

下面我們在看看第三人稱視角,如下圖所示,在Project視圖中將3rd Person Controller拖拽入Hierarchy視圖中。第三人稱視角需要使用我們原有的攝像機,如果剛剛將攝像機的刪掉的話。在Hierarchy視圖中點擊Creat->Camera 即可。然后選擇攝像機,在右側(cè)Inspector視圖中設置它的tag為MainCamera,如下圖所示。最后在Hierarchy視圖中選擇3rd Person Controller,在右側(cè)Inspector視圖中將Third Person Camera 腳本的 Camera Transform 變量綁定上剛剛創(chuàng)建的主攝像機,此時運行游戲后以第三人稱視角移動主角行走與跳躍,攝像機永遠都會在跟隨在后面除非修改角色控制器組件中默認提供的源碼,源碼都在右側(cè)監(jiān)測面板視圖中直接點開就可以查看。

下面我們學習角色控制器組件在其它模型之間的應用。首先在Hierarchy視圖中創(chuàng)建兩個Cube(立方體對象) 命名為:Cube0(發(fā)出碰撞的對象)Cube1(接收碰撞的對象),然后在
[代碼]java代碼:
using UnityEngine;
using System.Collections;
public class Test : MonoBehaviour {
新聞熱點
疑難解答