關(guān)于我們
書(shū)單推薦
新書(shū)推薦
|
Unity虛擬現(xiàn)實(shí)開(kāi)發(fā)實(shí)戰(zhàn)(原書(shū)第2版) 讀者對(duì)象:游戲開(kāi)發(fā)者、虛擬現(xiàn)實(shí)技術(shù)感興趣人員、Unity初學(xué)者、3D設(shè)計(jì)師、游戲設(shè)計(jì)師、游戲制作人、游戲策劃、游戲開(kāi)發(fā)者、游戲愛(ài)好者、想要進(jìn)入虛擬現(xiàn)實(shí)領(lǐng)域的程序員
本書(shū)將帶你進(jìn)行一系列實(shí)戰(zhàn),并深入討論如何使用Unity游戲引擎開(kāi)發(fā)VR應(yīng)用程序。本書(shū)通過(guò)基于項(xiàng)目的實(shí)踐方法,幫助你快速了解使用Unity進(jìn)行VR開(kāi)發(fā)的具體細(xì)節(jié)。通過(guò)Oculus、Daydream和Vive等設(shè)備的體驗(yàn),你將學(xué)習(xí)如何使用Unity開(kāi)發(fā)VR應(yīng)用程序。在眾多主題和項(xiàng)目中,你將探索基于凝視與手柄控制器輸入、世界坐標(biāo)系UI畫(huà)布、移動(dòng)與遠(yuǎn)程傳送、軟件設(shè)計(jì)模式、360°多媒體、時(shí)間軸動(dòng)畫(huà)與多人網(wǎng)絡(luò)。通過(guò)交互式Unity編輯器,你將了解Unity 3D游戲引擎,并且學(xué)習(xí)C#編程。
Unity已經(jīng)成為新一代消費(fèi)級(jí)VR設(shè)備構(gòu)建虛擬游戲、虛擬應(yīng)用和虛擬體驗(yàn)的主流平臺(tái)。
本書(shū)將帶你進(jìn)行一系列實(shí)戰(zhàn),并深入討論如何使用Unity游戲引擎開(kāi)發(fā)VR應(yīng)用程序。 本書(shū)通過(guò)基于項(xiàng)目的實(shí)踐方法,幫助你快速了解使用Unity進(jìn)行VR開(kāi)發(fā)的具體細(xì)節(jié)。你將學(xué)習(xí)使用Unity開(kāi)發(fā)基于Oculus、Daydream與Vive設(shè)備的VR應(yīng)用程序,探索基于凝視與手柄控制器輸入、世界坐標(biāo)系UI畫(huà)布、移動(dòng)與傳送、軟件設(shè)計(jì)模式、360°多媒體、時(shí)間軸動(dòng)畫(huà)與多人網(wǎng)絡(luò)等眾多的主題或項(xiàng)目,還將通過(guò)可交互式Unity編輯器(Editor)了解Unity 3D游戲引擎,并學(xué)習(xí)C#編程。 通過(guò)閱讀本書(shū),你將學(xué)到: ●在學(xué)習(xí)世界坐標(biāo)系與縮放比例時(shí),使用Unity和其他3D工具創(chuàng)建3D場(chǎng)景。 ●為特定的頭戴式顯示器,包括Oculus、Vive與Daydream創(chuàng)建并運(yùn)行VR應(yīng)用程序。 ●使用眼睛凝視、手柄控制器以及用戶(hù)輸入事件與虛擬對(duì)象進(jìn)行交互。 ●使用移動(dòng)與傳送漫游VR場(chǎng)景。 ●使用物理與粒子系統(tǒng)實(shí)現(xiàn)音頻火球游戲。 ●基于傳送與數(shù)據(jù)信息實(shí)現(xiàn)藝術(shù)畫(huà)廊。 ●使用音軌與時(shí)間軸設(shè)計(jì)并創(chuàng)建VR故事動(dòng)畫(huà)。 ●使用Unity網(wǎng)絡(luò)創(chuàng)建社交VR體驗(yàn)。
【前言】
如今,我們正在見(jiàn)證虛擬現(xiàn)實(shí)(VR)的迅猛發(fā)展,這是一項(xiàng)令人激動(dòng)的技術(shù),它有望改變我們與信息、朋友和整個(gè)世界進(jìn)行交互的基本方式。 戴上一個(gè)VR頭戴式顯示器,你就可以觀看立體3D場(chǎng)景,可以環(huán)顧四周,還可以在虛擬空間中四處走動(dòng),并使用定位手柄控制器與虛擬對(duì)象交互。你可以擁有完整的沉浸式體驗(yàn),就像真正置身于某個(gè)虛擬世界一樣。 本書(shū)通過(guò)基于項(xiàng)目的實(shí)踐方式詳細(xì)講解如何使用Unity 3D游戲引擎進(jìn)行虛擬現(xiàn)實(shí)開(kāi)發(fā)。我們將使用Unity 2018和其他免費(fèi)或開(kāi)源軟件來(lái)完成一系列實(shí)踐項(xiàng)目、循序漸進(jìn)的教程和深入的討論。VR技術(shù)正在快速發(fā)展,我們將嘗試獲取基本的原則和技巧,以便實(shí)現(xiàn)具有沉浸感和舒適感的VR游戲和應(yīng)用程序。 你將學(xué)習(xí)如何使用Unity來(lái)開(kāi)發(fā)可以用Oculus Rift、Google Daydream、HTC Vive等設(shè)備進(jìn)行體驗(yàn)的VR應(yīng)用程序。我們將涵蓋對(duì)于VR來(lái)說(shuō)重要且可能獨(dú)一無(wú)二的技術(shù)關(guān)注點(diǎn)。讀完本書(shū)后,你將能夠用Unity開(kāi)發(fā)豐富的交互式虛擬現(xiàn)實(shí)體驗(yàn)程序。 多年前,我在大學(xué)學(xué)習(xí)3D計(jì)算機(jī)圖形學(xué),在研究生院學(xué)習(xí)用戶(hù)界面設(shè)計(jì),然后成立了一家小型軟件公司,開(kāi)發(fā)用于管理AutoCAD工程圖的3D圖形引擎,后來(lái)此業(yè)務(wù)出售給了Autodesk。在接下來(lái)的幾年里,我專(zhuān)注于2D網(wǎng)絡(luò)應(yīng)用開(kāi)發(fā),在博客上記錄我的技術(shù)探索,并致力于發(fā)展幾家新的初創(chuàng)公司。然后,在2014年3月,我看到Facebook以20億美元的價(jià)格收購(gòu)了Oculus,這引起了我的興趣。于是我立即訂購(gòu)了我的第一臺(tái)VR頭戴式顯示器(Oculus DK2開(kāi)發(fā)套件),并開(kāi)始利用Unity開(kāi)發(fā)小型VR項(xiàng)目。 2015年2月,我打算寫(xiě)一本關(guān)于Unity VR開(kāi)發(fā)的書(shū)。Packt出版社馬上接受了我的建議,于是到2015年8月,本書(shū)的第1版出版了。從提案、大綱、章節(jié)草稿、審查到最終定稿和出版,只花費(fèi)了短暫的時(shí)間,我很癡迷于此。 在撰寫(xiě)本文時(shí),Google Cardboard發(fā)布了,但是沒(méi)有消費(fèi)級(jí)VR設(shè)備。DK2沒(méi)有手柄控制器,只有一個(gè)XBox游戲控制器。2015年11月,第1版發(fā)布幾個(gè)月后,HTC Vive推出了房間規(guī)模VR設(shè)置,同時(shí)配套有定位手柄控制器。2016年3月,Oculus Rift消費(fèi)者版本發(fā)布。直到2016年12月,也就是第1版出版近一年半之后,Oculus才發(fā)布定位手柄控制器。 自本書(shū)第1版出版以來(lái),許多新的VR設(shè)備已經(jīng)上市,硬件和軟件功能得到改進(jìn),Unity游戲引擎也持續(xù)增加原生VR SDK集成和新功能來(lái)支持它們。隨著行業(yè)的不斷加速發(fā)展,Oculus、Google、Steam、Samsung、PlayStation、Microsoft等多家企業(yè)加入了競(jìng)爭(zhēng)行列。 與此同時(shí),在2016年,我與Packt合作出版了另一本書(shū)Cardboard VR Projects for Android,這是一本使用Java和Android Studio構(gòu)建Google Daydream和Cardboard應(yīng)用的非Unity VR書(shū)籍。(在這本書(shū)中,你可以學(xué)習(xí)為移動(dòng)設(shè)備創(chuàng)建并使用自己的3D圖形引擎。)然后在2017年,我與Packt合作編寫(xiě)了第三本書(shū)Augmented Reality for Developers,這是一本令人興奮且被及時(shí)出版的書(shū),它基于Unity的項(xiàng)目,適用于在iOS、Android和HoloLens設(shè)備上開(kāi)發(fā)AR應(yīng)用程序。 當(dāng)開(kāi)始修訂本書(shū)的第2版時(shí),我認(rèn)為這將是一個(gè)相對(duì)簡(jiǎn)單的任務(wù),只需要更新到當(dāng)前版本的Unity、增加對(duì)定位手柄控制器的支持并進(jìn)行一些調(diào)整即可。但是沒(méi)那么簡(jiǎn)單!雖然第1版的許多基本原理和建議沒(méi)有改變,但作為一個(gè)行業(yè),我們?cè)诙潭痰膸啄昀飳W(xué)到了很多東西。例如,在VR中實(shí)現(xiàn)蹦床(我們?cè)诘?版中刪去了這個(gè)項(xiàng)目)真的不是一個(gè)好主意,因?yàn)檫@可能導(dǎo)致暈動(dòng)癥! 第2版進(jìn)行了重大修訂和擴(kuò)展。每個(gè)章節(jié)和項(xiàng)目都已更新。我們將一些主題分為獨(dú)立的章節(jié),包括音頻火球游戲(第8章)、動(dòng)畫(huà)(第11章)和優(yōu)化(第13章)。我真誠(chéng)地希望你能認(rèn)為本書(shū)既有趣又專(zhuān)業(yè),因?yàn)槲覀冎铝τ趧?chuàng)造出色的新VR內(nèi)容和探索這個(gè)神奇的新媒介。 【本書(shū)讀者對(duì)象】 如果你對(duì)虛擬現(xiàn)實(shí)感興趣,想要了解它的工作原理或創(chuàng)建自己的VR體驗(yàn),請(qǐng)閱讀本書(shū)。無(wú)論你是不是程序員,是否熟悉3D計(jì)算機(jī)圖形,是否剛開(kāi)始接觸虛擬現(xiàn)實(shí),你都將從本書(shū)獲益。當(dāng)然,擁有任何Unity經(jīng)驗(yàn)都是一種優(yōu)勢(shì)。如果你是Unity新手,也可以拿起這本書(shū),但你可以首先從Unity官網(wǎng)上提供的一些入門(mén)教程入手(https://unity3d.com/ learn)。 游戲開(kāi)發(fā)者可能已經(jīng)熟悉本書(shū)中重新應(yīng)用到VR項(xiàng)目中的概念,但可以學(xué)習(xí)到許多其他特定于VR的理念。已經(jīng)了解如何使用Unity的移動(dòng)設(shè)備設(shè)計(jì)師和2D游戲設(shè)計(jì)師將能發(fā)現(xiàn)另一個(gè)維度。工程師和3D設(shè)計(jì)師可能了解許多3D概念,但是可以學(xué)習(xí)如何使用Unity引擎開(kāi)發(fā)VR。應(yīng)用程序開(kāi)發(fā)人員可能會(huì)欣賞VR潛在的非游戲用途,并可能希望通過(guò)學(xué)習(xí)來(lái)實(shí)現(xiàn)這一目標(biāo)。 【本書(shū)主要內(nèi)容】 ●第1章介紹游戲和非游戲應(yīng)用中消費(fèi)級(jí)虛擬現(xiàn)實(shí)的新技術(shù)以及機(jī)會(huì),包括對(duì)立體視覺(jué)以及頭姿追蹤的解釋。 ●第2章介紹Unity游戲引擎,我們將構(gòu)建簡(jiǎn)單的立體模型場(chǎng)景,并介紹如何導(dǎo)入使用其他工具(如Blender、Tilt Brush、Google Poly和Unity EditorXR)創(chuàng)建的3D內(nèi)容。 ●第3章介紹如何設(shè)置系統(tǒng)以及如何在目標(biāo)設(shè)備上構(gòu)建和運(yùn)行Unity項(xiàng)目,這些設(shè)備包括SteamVR、Oculus Rift、Windows MR、GearVR、Oculus Go以及 Google Daydream。 ●第4章探討VR攝像機(jī)與場(chǎng)景中對(duì)象的關(guān)系,包括3D光標(biāo)和基于凝視的射線槍。該章還介紹如何使用C#語(yǔ)言進(jìn)行Unity腳本編程。 ●第5章討論通過(guò)控制器按鈕和可交互對(duì)象實(shí)現(xiàn)用戶(hù)輸入事件,涉及使用不同軟件模式,包括輪詢(xún)、可編寫(xiě)腳本的對(duì)象、Unity事件以及隨工具包SDK提供的可交互組件。 ●第6章給出使用Unity世界坐標(biāo)系畫(huà)布實(shí)現(xiàn)VR的用戶(hù)界面(UI)的許多示例,包括護(hù)目鏡(HUD)、信息框、游戲內(nèi)對(duì)象和腕部菜單欄。 ●第7章深入探討在VR場(chǎng)景中移動(dòng)自己的技巧,詳細(xì)探討Unity第一人稱(chēng)角色對(duì)象和組件、移動(dòng)、遠(yuǎn)程傳送以及房間規(guī)模VR。 ●第8章探索Unity物理引擎、物理材質(zhì)、粒子系統(tǒng)和更多C#腳本,同時(shí)我們創(chuàng)建了一個(gè)球拍游戲,讓你可以在喜歡的音樂(lè)中擊打火球。 ●第9章介紹如何建立交互式藝術(shù)畫(huà)廊,包括關(guān)卡設(shè)計(jì)、藝術(shù)作品照片、數(shù)據(jù)管理以及空間傳送。 ●第10章解釋360°多媒體并在各種示例中使用它們,包括地球儀、光球和天空盒等。 ●第11章介紹如何使用導(dǎo)入的3D資源和音軌、Unity時(shí)間軸和動(dòng)畫(huà)來(lái)創(chuàng)建完整的VR講故事體驗(yàn)。 ●第12章探索使用Unity Networking組件的多人游戲以及Oculus平臺(tái)頭像和VRChat會(huì)議室的開(kāi)發(fā)。 ●第13章演示如何使用Unity Profiler和Stats窗口來(lái)減少VR應(yīng)用程序的延遲,包括優(yōu)化3D藝術(shù)、靜態(tài)照明、高效編碼和GPU渲染。
喬納森林諾維斯(Jonathan Linowes)創(chuàng)立了Parkerhill Reality Labs(一個(gè)沉浸式媒體獨(dú)立工作室),是BridgeXR工具包、Power Solitaire VR游戲以及即將到來(lái)的Chess Or Die游戲的開(kāi)發(fā)者。他是VR/AR的傳播者、Unity開(kāi)發(fā)者、企業(yè)家和教師。他擁有美國(guó)雪城大學(xué)(Syracuse University)的藝術(shù)學(xué)士學(xué)位和麻省理工學(xué)院媒體實(shí)驗(yàn)室(MIT Media Lab)的碩士學(xué)位。他曾在Autodesk公司和其他公司擔(dān)任技術(shù)領(lǐng)導(dǎo)職務(wù)。他撰寫(xiě)了《Unity Virtual Reality Projects 》(2015年第1版)《Cardboard VR Projects for Android 》(2016) 和 《Augmented Reality for Developers 》(2017)。
譯者序
前言 審閱者簡(jiǎn)介 第1章 萬(wàn)物皆可虛擬 1 1.1 虛擬現(xiàn)實(shí)對(duì)你來(lái)說(shuō)意味著什么 2 1.2 頭戴式顯示器的類(lèi)型 3 1.2.1 桌面VR 3 1.2.2 移動(dòng)VR 3 1.3 虛擬現(xiàn)實(shí)與增強(qiáng)現(xiàn)實(shí)的區(qū)別 4 1.4 應(yīng)用與游戲 5 1.5 虛擬現(xiàn)實(shí)是如何運(yùn)作的 7 1.5.1 立體3 D視圖 7 1.5.2 頭姿追蹤 9 1.6 VR體驗(yàn)類(lèi)型 10 1.7 VR必備技能 11 1.8 本書(shū)涵蓋的內(nèi)容 12 1.9 本章小結(jié) 12 第2章 內(nèi)容、物體和縮放比例 14 2.1 Unity入門(mén) 14 2.1.1 新建Unity項(xiàng)目 15 2.1.2 Unity編輯器 15 2.1.3 默認(rèn)世界坐標(biāo)系 16 2.2 創(chuàng)建簡(jiǎn)單的透視圖 17 2.2.1 添加立方體 18 2.2.2 添加平面 18 2.2.3 添加球體和材質(zhì) 19 2.2.4 改變場(chǎng)景視圖 21 2.2.5 添加照片 22 2.2.6 給地平面著色 23 2.3 測(cè)量工具 24 2.3.1 隨手保留一個(gè)單位立方體 24 2.3.2 使用網(wǎng)格投影器 24 2.3.3 測(cè)量Ethan角色 25 2.4 使用第三方內(nèi)容 27 2.5 使用Blender創(chuàng)建3D內(nèi)容 29 2.5.1 Blender簡(jiǎn)介 29 2.5.2 單位立方體 31 2.5.3 UV紋理圖片 32 2.5.4 導(dǎo)入U(xiǎn)nity 34 2.5.5 一些觀察 35 2.6 在VR中創(chuàng)建3D內(nèi)容 35 2.6.1 導(dǎo)入和導(dǎo)出Tilt Brush模型 37 2.6.2 使用Google Poly進(jìn)行發(fā)布和導(dǎo)入 38 2.7 在VR中使用EditorXR編輯Unity 39 2.7.1 設(shè)置EditorXR 40 2.7.2 使用EditorXR 41 2.8 本章小結(jié) 43 第3章 VR的構(gòu)建和運(yùn)行 44 3.1 Unity VR支持和工具包 44 3.1.1 Unity的內(nèi)置VR支持 45 3.1.2 特定于設(shè)備的工具包 46 3.1.3 應(yīng)用程序工具包 47 3.1.4 基于Web和JavaScript的VR 47 3.1.5 3D世界 48 3.2 為你的平臺(tái)啟用虛擬現(xiàn)實(shí) 48 3.2.1 設(shè)置目標(biāo)平臺(tái) 49 3.2.2 設(shè)置XR SDK 50 3.2.3 安裝設(shè)備工具包 50 3.2.4 創(chuàng)建MeMyselfEye播放器預(yù)制件 50 3.3 構(gòu)建SteamVR 52 3.4 構(gòu)建Oculus Rift 53 3.5 構(gòu)建Windows沉浸式MR 55 3.5.1 設(shè)置Windows 10開(kāi)發(fā)人員模式 56 3.5.2 在Visual Studio中安裝UWP支持 56 3.5.3 UWP構(gòu)建 57 3.6 為Android設(shè)備設(shè)置 58 3.6.1 安裝Java開(kāi)發(fā)工具包 59 3.6.2 安裝Android SDK 59 3.6.3 使用命令行工具 60 3.6.4 關(guān)于Android SDK根路徑位置 61 3.6.5 安裝USB設(shè)備調(diào)試和連接 61 3.6.6 配置Unity外部工具 62 3.6.7 為Android配置Unity Player Settings 63 3.7 為GearVR和Oculus Go構(gòu)建 63 3.8 為Google VR構(gòu)建 64 3.8.1 Google Daydream 64 3.8.2 Google Cardboard 65 3.8.3 Google VR運(yùn)行模式 66 3.9 為iOS設(shè)備設(shè)置 67 3.9.1 擁有Apple ID 67 3.9.2 安裝Xcode 67 3.9.3 配置iOS的Unity Player Settings 68 3.9.4 構(gòu)建和運(yùn)行 68 3.10 本章小結(jié) 69 第4章 基于凝視的操控 70 4.1 游走者Ethan 70 4.1.1 人工智能Ethan 71 4.1.2 NavMesh烘焙 72 4.1.3 鎮(zhèn)上的隨機(jī)游走者 74 4.1.4 RandomPosition腳本 74 4.1.5 “僵尸”Ethan 76 4.2 向我看的方向行走 77 4.2.1 LookMoveTo腳本 77 4.2.2 添加反饋光標(biāo) 79 4.2.3 穿透對(duì)象觀察 80 4.3 如果眼神可以殺人 81 4.3.1 KillTarget腳本 81 4.3.2 添加粒子效果 83 4.3.3 清理工作 84 4.4 Unity C#編程簡(jiǎn)介 84 4.5 本章小結(jié) 86 第5章 便捷的交互工具 87 5.1 設(shè)置場(chǎng)景 88 5.1.1 創(chuàng)建氣球 88 5.1.2 使之成為預(yù)制件 88 5.2 基本按鈕輸入 90 5.2.1 使用Fire1按鈕 90 5.2.2 OpenVR的扳機(jī)鍵 92 5.2.3 用Daydream控制器單擊 93 5.3 輪詢(xún)單擊 93 5.3.1 按鈕界面功能 94 5.3.2 創(chuàng)建并釋放氣球 95 5.3.3 按住按鈕給氣球充氣 96 5.4 使用腳本化對(duì)象進(jìn)行輸入 98 5.4.1 創(chuàng)建腳本化對(duì)象 99 5.4.2 填充輸入操作對(duì)象 100 5.4.3 訪問(wèn)輸入操作對(duì)象 101 5.4.4 使用腳本化對(duì)象進(jìn)行模擬測(cè)試 101 5.5 使用Unity事件處理輸入 102 5.5.1 調(diào)用輸入操作事件 103 5.5.2 訂閱輸入事件 103 5.6 使用雙手 105 5.6.1 將氣球設(shè)為手柄的子對(duì)象 105 5.6.2 讓氣球爆炸 107 5.7 交互項(xiàng)目 108 5.7.1 使用SteamVR交互系統(tǒng)進(jìn)行交互 109 5.7.2 使用Daydream VR Elements進(jìn)行交互 110 5.8 本章小結(jié) 112 第6章 世界坐標(biāo)系UI 113 6.1 學(xué)習(xí)VR設(shè)計(jì)原則 114 6.2 可重用的默認(rèn)畫(huà)布 116 6.3 護(hù)目鏡HUD 118 6.4 十字光標(biāo) 120 6.5 擋風(fēng)玻璃HUD 122 6.6 游戲元素UI 124 6.7 使用文字特效插件TextMeshPro 125 6.8 信息框 126 6.9 響應(yīng)輸入事件的游戲內(nèi)儀表板 129 6.9.1 創(chuàng)建帶有按鈕的儀表板 129 6.9.2 連接水管與按鈕 131 6.9.3 用腳本激活按鈕 132 6.9.4 用注視高亮顯示按鈕 133 6.9.5 注視并單擊選擇 135 6.9.6 注視并聚焦選擇 136 6.10 使用VR組件指向并單擊 136 6.10.1 使用Unity UI和SteamVR 137 6.10.2 使用Unity UI和Daydream 139 6.11 構(gòu)建基于手腕的菜單欄 139 6.12 本章小結(jié) 140 第7章 移動(dòng)與舒適 141 7.1 理解Unity角色 141 7.1.1 Unity組件 142 7.1.2 Unity的Standard Assets 143 7.2 使用滑行移動(dòng) 145 7.2.1 沿視線方向移動(dòng) 145 7.2.2 保持腳著地 146 7.2.3 不要穿透固體對(duì)象 147 7.2.4 不要在邊緣墜落 149 7.2.5 跨越小物體并處理崎嶇路面 149 7.2.6 開(kāi)始與停止移動(dòng) 150 7.3 添加舒適模式移動(dòng) 150 7.4 傳送技術(shù) 153 7.4.1 凝視傳送 153 7.4.2 在表面之間傳送 155 7.4.3 傳送生成點(diǎn) 157 7.4.4 其他傳送考慮因素 160 7.5 傳送工具包 161 7.5.1 使用SteamVR交互系統(tǒng)傳送 161 7.5.2 使用Daydream Elements傳送 162 7.6 重置中心和位置 163 7.7 對(duì)付VR暈動(dòng)癥 164 7.8 本章小結(jié) 166 第8章 使用物理引擎 167 8.1 Unity的物理組件 167 8.2 彈力球 169 8.3 管理游戲?qū)ο? 171 8.3.1 銷(xiāo)毀墜落的對(duì)象 172 8.3.2 設(shè)置持續(xù)時(shí)間 172 8.3.3 實(shí)現(xiàn)一個(gè)對(duì)象池 172 8.4 用頭部射擊游戲 176 8.5 球拍游戲 180 8.6 射手游戲 182 8.7 完善場(chǎng)景 185 8.7.1 創(chuàng)建大火球 186 8.7.2 Skull環(huán)境 188 8.7.3 音頻同步 190 8.8 本章小結(jié) 191 第9章 漫游和渲染 192 9.1 用Blender構(gòu)建 192 9.1.1 構(gòu)建墻體 193 9.1.2 添加天花板 194 9.2 用Unity組裝場(chǎng)景 197 9.2.1 畫(huà)廊 197 9.2.2 藝術(shù)品部件 198 9.2.3 展覽計(jì)劃 200 9.3 將圖片添加到畫(huà)廊中 202 9.4 管理藝術(shù)信息數(shù)據(jù) 204 9.4.1 使用列表 204 9.4.2 使用數(shù)據(jù)結(jié)構(gòu) 205 9.4.3 使用腳本化對(duì)象 206 9.5 顯示藝術(shù)信息 208 9.5.1 創(chuàng)建標(biāo)題牌匾 209 9.5.2 詳細(xì)的交互信息 210 9.5.3 調(diào)整圖像寬高比 212 9.6 漫游畫(huà)廊 213 9.6.1 在畫(huà)像之間傳送 213 9.6.2 考慮房間規(guī)模 215 9.6.3 動(dòng)畫(huà)穿越 216 9.7 本章小結(jié) 218 第10章 利用360? 219 10.1 360岸嗝教? 219 10.1.1 等距圓柱投影 220 10.1.2 VR正在侵入你的視野 220 10.1.3 180岸嗝教? 221 10.1.4 立體360岸嗝教? 221 10.2 有趣的光球 222 10.2.1 水晶球 222 10.2.2 地球儀 224 10.3 渲染光球 225 10.3.1 編寫(xiě)自定義內(nèi)部著色器 226 10.3.2 魔法球 228 10.3.3 光球 229 10.3.4 播放360笆悠? 230 10.4 使用Unity天空盒 232 10.4.1 六邊形或立方體天空盒 233 10.4.2 球面全景天空盒 234 10.4.3 360笆悠堤煒蘸? 235 10.4.4 3D立體天空盒 236 10.5 在Unity中捕捉360岸嗝教? 236 10.5.1 捕捉立方體貼圖和反射探頭 236 10.5.2 使用第三方庫(kù)360安痘? 圖像 238 10.5.3 Unity內(nèi)置立體360巴枷窈? 視頻捕獲 239 10.6 本章小結(jié) 240 第11章 動(dòng)畫(huà)與VR講故事 241 11.1 撰寫(xiě)我們的故事 241 11.1.1 收集資源 242 11.1.2 創(chuàng)建初始場(chǎng)景 243 11.2 Timeline和音頻軌道 245 11.3 使用Timeline激活對(duì)象 247 11.4 錄制Animation Track 248 11.4.1 正在生長(zhǎng)的樹(shù) 248 11.4.2 正在生長(zhǎng)的鳥(niǎo) 249 11.5 使用動(dòng)畫(huà)編輯器 249 11.6 動(dòng)畫(huà)的其他屬性 252 11.6.1 動(dòng)畫(huà)的燈光 252 11.6.2 動(dòng)畫(huà)腳本組件屬性 253 11.6.3 控制粒子系統(tǒng) 255 11.7 使用動(dòng)畫(huà)剪輯 257 11.8 使用動(dòng)畫(huà)控制器 258 11.8.1 動(dòng)畫(huà)和動(dòng)畫(huà)器的定義 259 11.8.2 ThirdPersonController動(dòng)畫(huà) 259 11.8.3 Living Bird動(dòng)畫(huà)器 260 11.8.4 學(xué)習(xí)飛行 262 11.8.5 對(duì)鳥(niǎo)進(jìn)行攻擊 264 11.8.6 飛走 264 11.9 讓故事更具互動(dòng)性 265 11.9.1 期待播放效果 265 11.9.2 重置初始場(chǎng)景設(shè)置 267 11.9.3 更多互動(dòng)的想法 268 11.10 本章小結(jié) 268 第12章 社交化的VR虛擬空間 269 12.1 多玩家網(wǎng)絡(luò) 270 12.1.1 網(wǎng)絡(luò)服務(wù) 270 12.1.2 網(wǎng)絡(luò)架構(gòu) 271 12.1.3 本地與服務(wù)器 271 12.1.4 Unity的網(wǎng)絡(luò)系統(tǒng) 272 12.2 建立簡(jiǎn)單的場(chǎng)景 273 12.2.1 創(chuàng)建場(chǎng)景環(huán)境 273 12.2.2 創(chuàng)建虛擬角色的頭部 274 12.3 添加多玩家網(wǎng)絡(luò) 275 12.3.1 Network Manager和HUD 275 12.3.2 Network Identity和Sync Transform 275 12.3.3 作為一個(gè)主機(jī)運(yùn)行 276 12.3.4 添加出生點(diǎn)位 276 12.3.5 運(yùn)行游戲的兩個(gè)實(shí)例 277 12.3.6 關(guān)聯(lián)虛擬角色與第一人稱(chēng)角色 278 12.4 添加配對(duì)大廳 280 12.5 同步對(duì)象和屬性 281 12.5.1 設(shè)置頭球游戲 282 12.5.2 通過(guò)聯(lián)網(wǎng)射擊球 284 12.5.3 同步球變換 285 12.5.4 狀態(tài)變量同步 286 12.6 高級(jí)網(wǎng)絡(luò)主題 287 12.7 語(yǔ)音聊天選項(xiàng) 288 12.8 使用Oculus平臺(tái)和虛擬角色 288 12.8.1 Oculus平臺(tái)權(quán)限檢查 289 12.8.2 添加本地虛擬角色 290 12.8.3 添加遠(yuǎn)程虛擬角色 291 12.9 構(gòu)建和共享自定義VRChat會(huì)議室 292 12.10 本章小結(jié) 294 第13章 優(yōu)化性能和舒適度 295 13.1 使用Unity的Profiler和Stats 296 13.1.1 Stats窗口 296 13.1.2 Profiler窗口 297 13.2 優(yōu)化藝術(shù)品 298 13.2.1 設(shè)置場(chǎng)景 299 13.2.2 抽取模型 302 13.2.3 透明材質(zhì) 303 13.2.4 細(xì)節(jié)層次 304 13.3 使用靜態(tài)對(duì)象優(yōu)化場(chǎng)景 307 13.3.1 設(shè)置場(chǎng)景 307 13.3.2 燈光和烘焙 307 13.3.3 遮擋刪除 309 13.4 優(yōu)化代碼 310 13.4.1 了解Unity的生命周期 311 13.4.2 編寫(xiě)高效的代碼 312 13.4.3 避免費(fèi)時(shí)的API調(diào)用 313 13.5 優(yōu)化渲染 313 13.5.1 批次處理 314 13.5.2 多通道像素填充 315 13.5.3 VR優(yōu)化著色器 316 13.6 運(yùn)行時(shí)性能和調(diào)試 316 13.6.1 Daydream 317 13.6.2 Oculus 318 13.7 本章小結(jié) 318
你還可能感興趣
我要評(píng)論
|