基于Unity與SteamVR構(gòu)建虛擬世界》 —2.3 安裝提示">《基于Unity與SteamVR構(gòu)建虛擬世界》 —2.3 安裝提示
1145
2025-03-31
3.2 Unity編輯器教學(xué)
如果你之前從未使用過Unity,隨著本書的進(jìn)程你會(huì)需要一些相關(guān)的知識(shí)。如果已經(jīng)使用過Unity,閱讀本章節(jié)以確保我們使用的術(shù)語是統(tǒng)一的。
這里不是Unity編輯器的擴(kuò)展,是針對(duì)性訪問而非深入分析。如果你需要了解編輯器的更多信息,Unity在其網(wǎng)站上提供了開發(fā)文檔(https://unity3d-com/learn/tutorials/topics/interface-essentials)。
編輯器界面和面板
目前,Unity編輯器直觀且易于使用,編輯器布局可以根據(jù)每個(gè)人的工作方式做相應(yīng)不同的設(shè)置,在許多不同的設(shè)置方式找到最適合你工作方式的配置,設(shè)置好Unity是開始使用Unity的好開頭。在本書中將使用2×3的布局,而不是使用默認(rèn)的Unity布局。
從編輯器窗口右上角的下拉菜單中選擇2×3布局預(yù)設(shè)(圖3-2),視圖將切換更改。
Unity編輯器分成不同的視圖和面板(圖3-3),重點(diǎn)介紹以下幾個(gè)部分:
游戲視圖(Game View):在常規(guī)的游戲開發(fā)中,大部分動(dòng)作發(fā)生在這個(gè)窗口,可以預(yù)覽場(chǎng)景中任何攝像機(jī)可以看到的,在你運(yùn)行之前可以觀察游戲的外觀。在開發(fā)過程中,你會(huì)發(fā)現(xiàn)實(shí)際上你查看游戲視圖的次數(shù)將會(huì)越來越少,因?yàn)橹挥袕念^戴式設(shè)備中觀看到的場(chǎng)景相對(duì)更為重要,在預(yù)覽窗口中很難體會(huì)到真實(shí)感受。
場(chǎng)景視圖(Scene View):在虛擬現(xiàn)實(shí)開發(fā)中,這個(gè)界面可能是除了在頭戴式顯示器里觀看到內(nèi)容外最能直觀查看設(shè)計(jì)的界面。場(chǎng)景視圖是可以放置、移動(dòng)和操作對(duì)象的界面。在場(chǎng)景視圖中查看世界與頭戴式顯示器中觀看完全不同,因此你需要不斷地進(jìn)行調(diào)試。
圖3-3 Unity編輯器組成部分
層級(jí)視圖(Hierarchy):場(chǎng)景是由多個(gè)不同的游戲?qū)ο蠼M成的。游戲?qū)ο笤赨nity作為占位符實(shí)體,可用于形成構(gòu)建虛擬世界的網(wǎng)格、聲音以及其他元素。游戲?qū)ο笾g的關(guān)系會(huì)影響在虛擬世界中的運(yùn)動(dòng)方式。例如有的游戲?qū)ο髮㈡溄拥狡渌矬w并與之共同運(yùn)動(dòng)或是單獨(dú)運(yùn)動(dòng)。層級(jí)視圖包含當(dāng)前場(chǎng)景中每個(gè)游戲?qū)ο蟮牧斜砬揖哂袑哟谓Y(jié)構(gòu)。注意,層級(jí)視圖頂部還有一個(gè)搜索功能,在復(fù)雜的游戲場(chǎng)景搜索功能可以方便地查找游戲?qū)ο蟆?/p>
檢視視圖(Inspector):檢視視圖用于顯示、編輯場(chǎng)景中游戲?qū)ο蟮脑敿?xì)信息和屬性操作,包括對(duì)象的位置、縮放和旋轉(zhuǎn)以及其他組件。一些組件是由腳本和代碼構(gòu)成的,而其他組件是Unity內(nèi)置的,所有可配置的值、屬性等都將會(huì)顯示在檢視視圖中。
項(xiàng)目瀏覽器窗口(Project Browser Window):項(xiàng)目瀏覽器窗口是包括整個(gè)Unity項(xiàng)目工程文件所有資源的界面,在這個(gè)窗口你可以對(duì)所有文件進(jìn)行移動(dòng)、編輯等操作。項(xiàng)目瀏覽器窗口有一個(gè)瀏覽器界面包含所有的圖像、聲音以及項(xiàng)目所需要的腳本等文件夾,可以幫助你的項(xiàng)目保持有序。在窗口的搜索欄中可以迅速找到所需要的資源,這對(duì)于游戲資源龐大時(shí)十分必要。
常用組件和專業(yè)術(shù)語
編輯器在視圖和面板之外還有一些常用組件。
1.主工具欄
工具欄(Main Toolbar)由七個(gè)不同的工具組成,它們?cè)诰庉嬤^程行使著不同的功能(圖3-4)。
圖3-4 主工具欄
工具欄從左到右依次為:
變換工具(Transform Tools):每個(gè)游戲?qū)ο蠖加幸粋€(gè)變換組件,變換組件提供了關(guān)于游戲?qū)ο蟮奈恢谩⑿D(zhuǎn)和縮放的信息。變換工具(圖3-5)允許在場(chǎng)景視圖中移動(dòng)、旋轉(zhuǎn)和操作來改變場(chǎng)景中的游戲?qū)ο蟆.?dāng)編輯器不處于運(yùn)行模式時(shí),使用變換工具進(jìn)行任何變換會(huì)被保存,但是在場(chǎng)景運(yùn)行模式下進(jìn)行變換操作將不會(huì)被保存。
手形工具①可用于移動(dòng)攝像機(jī);移動(dòng)工具②用于移動(dòng)物體;旋轉(zhuǎn)工具③兩個(gè)箭頭表示旋轉(zhuǎn);縮放工具④用于縮放物體;最后一個(gè)是矩形工具,是主要用于處理2D圖形的多用途工具。矩形工具大多用于用戶界面或2D游戲視圖,但它對(duì)于3D對(duì)象也可能非常方便。
變換坐標(biāo)系工具(Transform Gizmo Toggles):左側(cè)是軸心切換,右側(cè)是坐標(biāo)切換。這些切換按鈕的狀態(tài)會(huì)直接影響對(duì)象移動(dòng)或旋轉(zhuǎn)的方式,軸心切換工具決定物體旋轉(zhuǎn)的中心點(diǎn)。利用變換坐標(biāo)系工具切換自身坐標(biāo)到世界坐標(biāo)(變換工具均可處理全局旋轉(zhuǎn)或活動(dòng)對(duì)象的旋轉(zhuǎn))。
播放/暫停/逐幀播放按鈕(Play/Pause/Step Buttons):播放/暫停/逐幀播放按鈕控制游戲預(yù)覽。
云按鈕(Cloud Button):云圖標(biāo)訪問Unity官網(wǎng)(如云存儲(chǔ)等)。
賬戶菜單(Account Menu):使用Unity需要?jiǎng)?chuàng)建一個(gè)賬戶,通過賬戶菜單圖標(biāo)進(jìn)行賬戶設(shè)置。
圖層菜單(Layers Menu):Unity可以在圖層菜單中設(shè)置和編輯圖層,設(shè)置游戲?qū)ο笙嗷リP(guān)系。
布局菜單(Layout Menu):布局下拉菜單,可以切換Unity編輯器布局,默認(rèn)情況下,我們使用2×3布局。
2.Unity常見術(shù)語
場(chǎng)景(Scene):Unity將世界分為多個(gè)不同場(chǎng)景,在場(chǎng)景中游戲?qū)ο竽軐?shí)現(xiàn)所想象的運(yùn)動(dòng)方式。例如,在運(yùn)行時(shí)場(chǎng)景之間切換可顯示游戲?qū)ο笤诓煌h(huán)境的移動(dòng)。
組件(Component):組件由Unity自帶或者由腳本編寫,能為游戲?qū)ο螅℅ameObject)提供相應(yīng)行為動(dòng)作,比如碰撞、聲音等。
游戲?qū)ο螅℅ameObject):Unity中模擬游戲?qū)嶓w成為游戲?qū)ο螅瑯?gòu)成游戲場(chǎng)景中的玩家、敵人或者世界中的一部分,通過組件來給游戲?qū)ο筇砑訉傩裕ɡ玟秩緦?duì)象或者加入碰撞)。
變換(Transform):Unity中默認(rèn)組件,創(chuàng)建每個(gè)游戲?qū)ο蠖紝?huì)帶有該組件,包括對(duì)象的位置、旋轉(zhuǎn)和縮放信息,通過該組件可以直接對(duì)對(duì)象進(jìn)行操作,移動(dòng)、旋轉(zhuǎn)或者是縮放物體大小。
預(yù)設(shè)體(Prefab):適用于在創(chuàng)建游戲?qū)ο蠡蛴螒驅(qū)ο蠼M件時(shí)重復(fù)使用(例如彈射或者粒子效果)。預(yù)設(shè)體可包含一個(gè)或者多個(gè)游戲?qū)ο蠼M件,可隨時(shí)添加到場(chǎng)景中。
標(biāo)簽(Tag):Unity中提供標(biāo)簽來組織及識(shí)別游戲?qū)ο螅梢栽赨nity編輯器來設(shè)置帶有名稱(例如玩家、敵人、地形等)的標(biāo)簽,也可以在代碼中通過標(biāo)簽識(shí)別和查找游戲?qū)ο蟆?/p>
圖層(Layer):圖層的主要作用是管理碰撞系統(tǒng),在編輯器中對(duì)圖層命名,在代碼中通常通過索引號(hào)引用圖層名稱。Unity允許通過圖層碰撞矩陣(圖3-6)選擇彼此碰撞的圖層,這可以通過Edit下面的Project Settings中的Physics訪問。
圖3-6 圖層碰撞矩陣可以選擇圖層發(fā)生碰撞
觸發(fā)器(Trigger):Unity中可以在碰撞系統(tǒng)中設(shè)置,但實(shí)際上并不能解決游戲?qū)ο笾g的碰撞問題,而主要是通過檢查碰撞組件上的IsTrigger復(fù)選框是否勾選(如Box Collider或Sphere Collide組件)。Unity在物體發(fā)生碰撞時(shí)進(jìn)行注冊(cè),但并不進(jìn)行任何的物理解析。將相關(guān)函數(shù)添加到腳本中,每當(dāng)事件發(fā)生時(shí)都會(huì)被游戲引擎自動(dòng)調(diào)用,便可以知道碰撞發(fā)生時(shí)間并做出相應(yīng)的反應(yīng)。作為示例,觸發(fā)器通常用于告知玩家何時(shí)穿過關(guān)卡,游戲?qū)ο蠛屯婕铱梢宰杂梢苿?dòng)并不受關(guān)卡影響。
畫布(Canvas):畫布是我們?cè)赨nity中使用的用戶界面,是承載所有UI元素的區(qū)域。
5G游戲 unity 5G教育 虛擬化
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。