本文為博主原創(chuàng)文章考蕾,歡迎轉(zhuǎn)載祸憋,請保留出處:http://blog.csdn.net/andrewfan
2.2Unity中的基本概念
上述介紹提到了幾個(gè)概念:游戲?qū)ο蟆鼍靶の浴①Y源蚯窥、相機(jī),這個(gè)小節(jié)我們來深入了解塞帐,同時(shí)進(jìn)行一些實(shí)踐性操作拦赠。不過首先,我們需要大概了解一下Unity的工程文件夾葵姥。
2.2.1工程文件夾
在Unity工程目錄下的文件夾荷鼠,大致整理如下:
Assets
Assets文件夾是Unity中的工程資源文件夾,Unity編輯器尋找工程路徑時(shí)的搜索目標(biāo)榔幸。我們所有的資源都存在這個(gè)文件夾中允乐,后續(xù)介紹的幾個(gè)文件夾都由系統(tǒng)自動產(chǎn)生。
Library
Library文件夾是Unity編輯器運(yùn)行時(shí)所依賴的資源文件夾削咆,原先Assets中的文件資源并不是直接被使用牍疏,而是被經(jīng)過平臺處理(不同終端平臺情況下,資源處理格式是不同的拨齐,比如Androiod和IOS的貼圖壓縮格式差別很大)后處理成相應(yīng)的格式鳞陨,并且暫存在這個(gè)文件夾中,以便于編輯器運(yùn)行時(shí)調(diào)用瞻惋。編輯器會自動對比厦滤、更新這個(gè)文件夾。如果被刪除歼狼,編輯器會自動重新產(chǎn)生馁害。注意不要把資源存放在這里。
ProjectSettings
ProjectSettings文件夾用作工程配置文件夾蹂匹,所有對于工程的配置信息都存儲在這里碘菜。比如:聲音配置、編輯器平臺編譯配置、全局物理參數(shù)忍啸、畫質(zhì)配置仰坦、用戶輸入配置、網(wǎng)絡(luò)配置等信息均存儲在該目錄下方相應(yīng)的配置文件中计雌。
obj
obj文件夾用于存放腳本代碼的編譯生成悄晃。同樣,這個(gè)文件夾會自動產(chǎn)生凿滤,不需要手動修改妈橄,不能用作存儲資源。
Temp
編輯器臨時(shí)目錄翁脆,啟動編輯器后才會建立,關(guān)閉自動刪除沙热。
2.2.2 Unity中的基本概念
如果把游戲中看作一部話劇罢缸,其中的各個(gè)部分均使用舞臺來呈現(xiàn)的話枫疆,那么這每個(gè)部分就是一幕場景,在Unity中對應(yīng)“Scene”這個(gè)單詞寝贡,同時(shí)也存在這個(gè)類。每一幕的話劇應(yīng)該有當(dāng)前所需要的各種道具谎碍,角色等等,而我們使用同樣的場景(Scene)這個(gè)概念來組織這些內(nèi)容拯啦。場景的存在熔任,即為我們提供一個(gè)空間疑苔,讓我們可以布置這些道具和角色,當(dāng)然這些道具和角色可以同時(shí)布置在多個(gè)場景中兵迅,而它們存儲的實(shí)際位置并非一定是當(dāng)前場景。相應(yīng)地恍箭,我們把一些Unity中的概念全部對應(yīng)到這部話劇中扯夭,大致解釋如下:
Scene
場景相當(dāng)于一幕話劇,用于存儲各種布置交洗,存儲后的資源文件以unity作為后綴名。代碼中使用Scene類來表示纵散。
Game Object
游戲?qū)ο笙喈?dāng)于話劇中的角色隐圾、道具暇藏、景物等等可視的物件盐碱。代碼中使用GameObject類來表示。
Component
組件相當(dāng)于話劇中的角色县好、道具或者景物所具有的功能缕贡。比如人可以行走晾咪,球可以滾動贮配,揚(yáng)聲器可以發(fā)出聲音等等。
代碼中使用Componenet類來表示泪勒,大部分情況下,我們自己編寫的應(yīng)類繼承Component的子類MonoBehavior,而Unity大部分的內(nèi)置組件不繼承MonoBehavior,也就是說偷崩,MonoBehavior是為“Unity玩家”專屬定制。
Camera
相機(jī)相當(dāng)于話劇中的攝像師手中的鏡頭谒出,它對準(zhǔn)的目標(biāo)會被以當(dāng)前鏡頭的角度所呈現(xiàn)笤喳。
代碼中用Camera類表示杀狡,Camera繼承自Component,作為游戲?qū)ο蟮慕M件出現(xiàn)。
Light
燈光相當(dāng)于話劇中的燈光設(shè)置蹬音,用于調(diào)節(jié)整個(gè)世界的明暗著淆。代碼中用Light類表示嘉熊,Light繼承自Component,同樣作為游戲?qū)ο蟮慕M件出現(xiàn)凫佛。
Prefab
預(yù)制件預(yù)制件是針對自定義的一組游戲?qū)ο罄⒀ΓM(jìn)行預(yù)先配置,比如設(shè)置它們之間的相對位置瓮栗,層級關(guān)系等等,然后將它們整體存儲為一個(gè)模板愿阐。后續(xù)每次使用這個(gè)模板糙麦,都會構(gòu)建出一份那組游戲?qū)ο蟮目截惥蹩浴4a中對應(yīng)GameObject類型节值,也就是說搞疗,本質(zhì)上這個(gè)模板仍然是一個(gè)GameObject幢炸,只不過它有些特別宛徊,就是它是“只讀”的,后續(xù)的章節(jié)我們會詳細(xì)解釋這部分內(nèi)容斜做。
Asset
資源資源瓤逼,Unity中有很多中資源抛姑,就連GameObject定硝、Component理論上也都是資源蔬啡,不過大部分情況下箱蟆,我們說的資源指的是:網(wǎng)格空猜、動畫、貼圖谆沃、材質(zhì)唁影、音頻片段据沈、字體等等。
資源類型比較多掏湾,對應(yīng)的類也不相同:
網(wǎng)格:Mesh????? ??文件格式:fbx融击、obj等
動畫:Animation?? 文件格式:anim等
貼圖:Texture???? 文件格式:psd尊浪、tif、png封救、jpeg等
材質(zhì):Material??? 文件格式:mat
音頻:AudioClip?? 文件格式:ogg拇涤、wav誉结、mp3等
字體:Font??????? 文件格式:ttf、fnt等
所有的資源類均繼承自UnityEngine命名空間下方的Object類惩坑,注意與CSharp默認(rèn)空間中的Object不同趾痘。
最常用的格式基本我都把它們排在了前方。上述Asset中的每種資源基本都有若干種文件格式,我們究竟應(yīng)該用哪種格式是需要考慮的一個(gè)問題肚吏,不過它們被導(dǎo)入之后都是處理成相同或者類似的結(jié)構(gòu)雌澄,我們不必太過擔(dān)心。
本文為博主原創(chuàng)文章镐牺,歡迎轉(zhuǎn)載炫掐,請保留出處:http://blog.csdn.net/andrewfan