U3D測試用工程

2021-08-02 02:15:35 字數 1780 閱讀 2313

像之前接觸ue的時候那樣,擼主決定先實現乙個發射小球的例子來熟悉這裡面的指令碼操作以及元件的使用。

裡面的**都用的是擼主比較熟悉的js。基本上只要注意一下變數的定義方式就好,方法呼叫沒有太大區別。

1.例項的最終效果

如圖所示,利用自帶的rigidbody元件以及自己編寫的簡單指令碼來實現簡單的移動、燈光操作以及發射子彈的效果。

2.遊戲的基本框架

init()//程式初始化

start()//啟動執行緒

run()//執行執行緒

paint()//繪圖程式

update()//程式更新

stop()//程式停止

其中update操作是這次例項測試的重點。

3.分步實現

0)場景搭建

1個作為角色的cube以及20個作為牆體的cube,為其加上rigidbody物理元件,其中牆體用的cube可以打組成乙個空物體的子物體方便編輯。

同時乙個直射燈光加上乙個聚光燈,調整主攝像機的位置。

1)移動

由於u3d自帶了各個軸向的操作,所以這裡簡單用translate函式來變換位置即可。

其中定義speed變數用來控制移動速度。

**如下

var speed = 5.0;

function update ()

2)燈光操作

角色身上應該有燈光跟隨,按下空格鍵之後聚光燈的焦點將會改變為角色中心。

**如下:

var switchtotarget: transform;

function update ()

3)發射子彈

firepoint代表發射子彈生成的位置,這裡為cube指定了乙個空的子物體,將其位置調整到cube前端某處,並將firepoint的值改為它,確保發射子彈不會「擊中角色」

bullet為建立的子彈,在這個例子裡將這個值制定為乙個prefab的sphere

bullet和currbulletcnt為兩個計數器,其中後者為private不可暴露修改

**如下:

var firepoint:transform;

var bullet: rigidbody;

var bulletcnt:int;

private var currbulletcnt:int;

function update ()

if (input.getbuttondown("fire1"))

}

U3D初學概況

u3d介紹 2004年,英特爾 波音 adobe 3d資料編碼方式。而且傳統的三維檔案就是基於cs結構,本機系統,脫離源程式無法開啟和瀏覽,即使通過特定程式能夠開啟,也是以犧牲大量編輯修改功能作為代價,尤其是三維檔案一般都體積巨大,無法通過網際網路傳播 瀏覽!u3d的目標是結束諸如autodesk ...

U3D支援中文

讓unity的js編輯器sciteg永久支援中文 假如你的 中有中文這個設定是很爽的。以後注釋也可以中文了。方法 1.用記事本開啟c program files unity editor data tools uniscite sciteglobal.properties 2.找到 internat...

U3D對齊功能

1,按快捷鍵shift v 的用法 先選中你要對齊的模型a,將物體a對齊到物體b 按快捷鍵shift v 此時將滑鼠移到模型a的各個頂點處,可發現各個頂點上會出現個小方框。左鍵按住其中乙個小方框不放,拖動滑鼠到另一物體b的某個頂點上,會發現模型a的頂點對齊到模型b的那個頂點上了,從而實現了模型a對齊...