任何游戲?qū)ο蠖加山M件組成,組件是實現(xiàn)一切功能所必需的,不同的組件有不同的功能,不同組件之間的相互組合以及組件中相應(yīng)參數(shù)的差異使得每一個游戲?qū)ο蟾鞑幌嗤?/strong>
創(chuàng)建的對象會在Hierarchy視圖中顯示,場景中的對象統(tǒng)稱為游戲?qū)ο蟆?/p>
常用組件介紹
Mesh有關(guān)
Mesh Filter 網(wǎng)格過濾器
在項目資源中獲取網(wǎng)格并將其傳遞到所屬的游戲?qū)ο笾?。還需添加Mesh Renderer(網(wǎng)格渲染器)組件,否則網(wǎng)格雖然存在,但是不會被渲染。
Text Mesh 文本網(wǎng)格
生成三維的字符串
Mesh Render 網(wǎng)格渲染器
從網(wǎng)格過濾器中獲取網(wǎng)格模型,進而根據(jù)游戲?qū)ο蟮腡ransform組件中定義的位置在Scene中進行渲染
Skinned Mesh Render 蒙皮渲染器
用于呈現(xiàn)骨骼動畫
Particle System
粒子系統(tǒng)組件用于創(chuàng)建煙霧、氣流、火焰、瀑布、噴泉、漣漪等
Physics
Unity擁有內(nèi)置的NVIDIAPhysX物理引擎,可以模擬真實的物理行為。
Image Effect
用于提高畫面的畫質(zhì)感(圖像后處理特效),補充很多外觀和視覺上的效果
Script
用于添加到游戲?qū)ο笊弦詫崿F(xiàn)各種交互操作及其他功能。
創(chuàng)建Prefabs
Prefabs為預(yù)設(shè)體,可以理解為一個游戲?qū)ο蠹捌浣M合的集合,目的是使游戲?qū)ο蠹捌滟Y源被重復(fù)利用。
實例化Prefabs
if(Input.GetKeyDown(KeyCode.A)){
Instantiate(prefab01,pos,Quaternion.identity);
}
else if(Input.GetKeyDown(KeyCode.S)){
Instantiate(sphere,pos,Quaternion.identity);
}
嵌套Prefabs
Unity 本身不支持嵌套Prefab,不能指定它們之間的層次關(guān)系??梢杂么a實現(xiàn)嵌套的Prefabs