Unity AR-VR虛擬現(xiàn)實(shí)開(kāi)發(fā)基礎(chǔ)(第2版)課件 第4章 創(chuàng)建數(shù)字虛擬世界_第1頁(yè)
Unity AR-VR虛擬現(xiàn)實(shí)開(kāi)發(fā)基礎(chǔ)(第2版)課件 第4章 創(chuàng)建數(shù)字虛擬世界_第2頁(yè)
Unity AR-VR虛擬現(xiàn)實(shí)開(kāi)發(fā)基礎(chǔ)(第2版)課件 第4章 創(chuàng)建數(shù)字虛擬世界_第3頁(yè)
Unity AR-VR虛擬現(xiàn)實(shí)開(kāi)發(fā)基礎(chǔ)(第2版)課件 第4章 創(chuàng)建數(shù)字虛擬世界_第4頁(yè)
Unity AR-VR虛擬現(xiàn)實(shí)開(kāi)發(fā)基礎(chǔ)(第2版)課件 第4章 創(chuàng)建數(shù)字虛擬世界_第5頁(yè)
已閱讀5頁(yè),還剩87頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Unity3d的內(nèi)置對(duì)象和工具目錄基本幾何體地形引擎天空盒Unity資源包基本幾何體基本幾何體Unity引擎為我們提供了許多基礎(chǔ)的幾何體,比如說(shuō)正方體、圓柱體、球體、膠囊體、平面、四邊形等。可以使用這些基本的幾何體來(lái)快速制作游戲的基本原型,包括物品和場(chǎng)景等?;編缀误w地形引擎地形引擎Unity中內(nèi)置了一個(gè)地形引擎系統(tǒng),可以讓開(kāi)發(fā)者快速給游戲添加基礎(chǔ)的地形地貌。和3D模型不同,在游戲運(yùn)行時(shí),編輯器中的地形渲染經(jīng)過(guò)了高度優(yōu)化,減少了對(duì)系統(tǒng)資源的消耗。當(dāng)然,這套地形引擎系統(tǒng)對(duì)開(kāi)發(fā)者也是十分的友好,通過(guò)使用內(nèi)置的相關(guān)工具,開(kāi)發(fā)者可以在很短的時(shí)間內(nèi)快速創(chuàng)建大場(chǎng)景的地形。第三方地形編輯器除了使用Unity內(nèi)置的地形編輯器,在AssetStore中還有一些非常優(yōu)秀的第三方地形編輯插件,如Gaia。使用該插件可以快速創(chuàng)建非常復(fù)雜但效果很接近真實(shí)的地形天空盒什么是天空盒天空盒我們?cè)谕嬗螒虻臅r(shí)候,尤其是野外的大場(chǎng)景中,要想更逼真離不開(kāi)三維天空系統(tǒng)。要用程序來(lái)模擬無(wú)邊無(wú)際的天空是不可能的,而聰明的前輩們自然也想到了用“天圓地方”這種古代人們對(duì)于天空的認(rèn)識(shí)來(lái)作為三維天空設(shè)計(jì)思想。如何更換場(chǎng)景中的天空盒更換天空盒Step1.創(chuàng)建新項(xiàng)目和場(chǎng)景Step2.從Asset

Store中下載天空盒,Skybox

Volume

2(Nebula),或其它Step3.將所下載的天空盒導(dǎo)入到場(chǎng)景中Step4.在Window-Rendering-Lighting

Settings中設(shè)置Environment下的Skybox

Material下載天空盒設(shè)置天空盒將SkyboxMaterial設(shè)置為下載的天空盒資源包的導(dǎo)入與導(dǎo)出資源包導(dǎo)入和導(dǎo)出1.創(chuàng)建并導(dǎo)出unitypackage2.導(dǎo)入已有的unitypackage

Unity3d的光照系統(tǒng)王寒目錄什么是光照系統(tǒng)不同光源對(duì)象的簡(jiǎn)介什么是全局光照光照探頭和反射探頭什么是光照系統(tǒng)Unity光照系統(tǒng)從字面意思理解,光照系統(tǒng)的作用就是給我們的場(chǎng)景帶來(lái)光源,用于照亮場(chǎng)景。一個(gè)五彩繽紛的游戲場(chǎng)景肯定要比一個(gè)漆黑一片的游戲場(chǎng)景更具吸引力,想讓游戲場(chǎng)景變的更漂亮,光照系統(tǒng)是必不可缺的。Unity光照系統(tǒng)組成部分Unity光照系統(tǒng)主要由燈光組件(4個(gè)燈光組件,2個(gè)特殊功能組件)以及Lighting面板組成。不同光源對(duì)象的簡(jiǎn)介DirectionalLightPointLightSpotLightAreaLight什么是全局光照全局光照在一個(gè)封閉空間內(nèi),兩個(gè)玻璃球體互相反射。全局光照極大程度提升了場(chǎng)景中光照的真實(shí)性,但這種程度的實(shí)時(shí)計(jì)算是非常消耗資源的。光照探頭和反射探頭Why?當(dāng)場(chǎng)景中的燈光烘焙后,光照信息和陰影都變成“靜止”的了。如果場(chǎng)景中有動(dòng)態(tài)的物體,比如可以自由行走的角色,那角色豈不是沒(méi)有陰影了?這個(gè)問(wèn)題我們?cè)撛趺唇鉀Q呢?這個(gè)時(shí)候就需要用到LightProbe(光照探頭)和ReflectionProbe(反射攤手)了。光照探頭的作用是收集附近的光照信息,并對(duì)探頭范圍內(nèi)的對(duì)象進(jìn)行實(shí)時(shí)渲染。LightProbesReflectionProbes效果圖反射探頭和它相似,它的作用是收集附近的反射信息,并反射到范圍內(nèi)的對(duì)象上,可以用來(lái)提升場(chǎng)景中的燈光效果。Unity3d中的粒子系統(tǒng)王寒目錄什么是Shuriken粒子系統(tǒng)怎么樣添加粒子系統(tǒng)什么是粒子系統(tǒng)什么是粒子系統(tǒng)粒子系統(tǒng)(particlesystems)中的粒子究竟指的是什么?游戲引擎中的粒子當(dāng)然不是指質(zhì)子、中子、電子甚至夸克這樣的微觀粒子,而是很小很簡(jiǎn)單的2D圖像或者3D網(wǎng)格模型。在粒子系統(tǒng)中,通過(guò)各種設(shè)置讓微小的粒子以某種特定的形態(tài)展示出來(lái),就形成了粒子特效。從這一點(diǎn)來(lái)看,粒子系統(tǒng)中的粒子就如同空氣中的灰塵或者微小顆粒。當(dāng)大量的粒子聚集在一起時(shí),就會(huì)形成我們所期待的各種酷炫效果。ShurikenUnity3d中的粒子系統(tǒng)ParticleSystem怎樣添加粒子系統(tǒng)添加粒子系統(tǒng)在Hierarchy視圖中右鍵Effects→ParticleSystemUnity3d中的Shader王寒目錄什么是ShaderUnity中的標(biāo)準(zhǔn)Shader自定義Shader什么是Shader什么是Shader

在計(jì)算機(jī)圖形學(xué)中,著色器(Shader)是指專用于渲染著色的計(jì)算機(jī)程序,其作用是設(shè)置圖像的光照、陰暗和色彩等。著色器通常以極高的靈活性在圖形硬件上計(jì)算所渲染的效果。大多數(shù)的著色器在編碼時(shí)是針對(duì)圖形處理單元(GPU)的,著色器編程語(yǔ)言通??捎糜诰帉慓PU渲染管道。通過(guò)著色器中預(yù)定義的算法,可以動(dòng)態(tài)修改圖像顯示的像素、頂點(diǎn)、紋理等元素的位置、色調(diào)、飽和度、明亮度和對(duì)比度等等。Unity3d中對(duì)象的渲染在Unity3D中,對(duì)游戲?qū)ο蟮匿秩臼峭ㄟ^(guò)材質(zhì)(Materials)、著色器(shaders)和紋理(Textures)共同完成的。三者的關(guān)系非常緊密,共同作用于游戲?qū)ο?,才形成了豐富多彩的游戲世界。材質(zhì)用于定義物體的表面是如何渲染的,包括所使用的紋理貼圖、表面鋪設(shè),以及色彩變化等等。材質(zhì)的可用設(shè)置選項(xiàng)取決于其所使用的著色器。Unity3D中的著色器其實(shí)是小的代碼片段,其中包含了各種數(shù)學(xué)運(yùn)算和算法,其作用是基于材質(zhì)的設(shè)置和光照輸入來(lái)計(jì)算每個(gè)像素點(diǎn)的色彩和其它屬性。紋理貼圖其實(shí)就是位圖。材質(zhì)中可能包含了到紋理的引用,因此材質(zhì)所使用的著色器可以在計(jì)算物體表面色彩的時(shí)候使用紋理貼圖。除了用于呈現(xiàn)物體表面的基本色彩(albedo),紋理還可以表現(xiàn)材質(zhì)表面的其它方面,比如反射或粗糙程度等。Unity中的標(biāo)準(zhǔn)Shader使用Shader示例創(chuàng)建新項(xiàng)目使用Shader步驟一在Assets文件夾下右鍵Create→Shader→StandardSurfaceShader使用Shader步驟二然后導(dǎo)入一張圖片使用Shader步驟三右鍵創(chuàng)建Material“Cube”使用Shader步驟四在Material的Shader下選擇“Cunstom/MyShader”使用Shader步驟四選中右側(cè)Select,在里面添加我們的圖片使用Shader步驟五在場(chǎng)景中創(chuàng)建一個(gè)Cube物體,最后再將我們的“CubeMaterial”材質(zhì)球拖拽到Cube上自定義Shader自定義ShaderUnity3D支持兩種類型的shader:表面著色器,以及頂點(diǎn)/片元著色器。不管是哪種類型的shader。Unity3D中的shader通常使用ShaderLab語(yǔ)言來(lái)編寫,在shader的代碼中可以用多個(gè)SubShader部分,Unity將依序執(zhí)行這些給GPU的指令,直到找到可以兼容你所使用的顯卡的代碼段??紤]到游戲的跨平臺(tái)支持性,這一點(diǎn)是非常有用的。為了讓開(kāi)發(fā)人員更輕松的開(kāi)發(fā)自定義shader,Unity3D從Unity2018.x版本開(kāi)始正式支持ShaderGraph,可以通過(guò)可視化界面輕松實(shí)現(xiàn)著色器的創(chuàng)建和編輯。ShaderGraph還支持LWRP和HDRP,甚至支持自定義的pipeline。

使用地形編輯器創(chuàng)建場(chǎng)景中的地形(實(shí)戰(zhàn)案例)王寒目錄案例描述案例實(shí)施案例描述案例描述在很多3D應(yīng)用和游戲中,除了建筑物之外,我們還需要?jiǎng)?chuàng)建一個(gè)模擬的戶外數(shù)字場(chǎng)景。Unity3D內(nèi)置了強(qiáng)大的地形編輯器工具,可以輕松創(chuàng)建各種豐富的地形地貌。為了讓大家熟悉地形編輯器的使用,我們將一起通過(guò)實(shí)戰(zhàn)學(xué)習(xí)如何通過(guò)地形編輯器來(lái)創(chuàng)建簡(jiǎn)單的地形。案例實(shí)施準(zhǔn)備工作Step1.創(chuàng)建新項(xiàng)目,MySpaceStep2.下載最新地形編輯器(在Unity3D的編輯器菜單欄中選擇Window-PackageManager-TerrainTools)Step3.導(dǎo)入地形資源包和標(biāo)準(zhǔn)資源包(在AssetStore中搜索terraintoolssampleassetpack和standardassets),修復(fù)一些簡(jiǎn)單的bug(刪除StandardAssets\Utility\SimpleActivatorMenu.csStep4.下載并導(dǎo)入FreeRealSkies創(chuàng)建地形在編輯器的菜單欄中選中選擇GameObject-3DObject-Terrain,就可以在場(chǎng)景中添加一個(gè)大的扁平的地形編輯地形在Hierarchy視圖中選擇Terrain對(duì)象,在Inspector視圖中單擊Terrain組件下的設(shè)置按鈕將Resolution下的TerrainWidth(地形寬度)和TerrainLength(地形長(zhǎng)度)均設(shè)置為1200,將TerrainHeight(地形高度)設(shè)置為600繪制山脈在工具欄上選擇第二個(gè)按鈕PaintTerrain,然后從下拉列表中選擇Raiseorlowerterrain。接下來(lái)根據(jù)自己的喜好來(lái)調(diào)整畫筆的尺寸或類型,按住鼠標(biāo)左鍵不放在地形的特定區(qū)域繪制出山脈或凸起的地形添加樹木在地形編輯器的工具欄上選擇第三個(gè)按鈕,然后點(diǎn)擊EditTrees按鈕,選擇AddTree,然后選擇Broadleaf_Desktop,最后點(diǎn)擊Add添加樹木接下來(lái)按住鼠標(biāo)左鍵,在地形中所需要的地方繪制即可添加植被在地形編輯器的工具欄上點(diǎn)擊第四個(gè)按鈕“PaintDetails”,點(diǎn)擊下方的EditDetails,點(diǎn)擊AddGrassTexture,然后選擇某個(gè)草地紋理,比如GrassFrond01AlbedoAlpha,最后點(diǎn)擊Add確定。添加植被接下來(lái)按住鼠標(biāo)左鍵不放,在地形中的所需區(qū)域添加植被。需要特別注意的是,當(dāng)我們?cè)趫?chǎng)景中添加植被后,如果從比較遠(yuǎn)的距離去觀察,是看不到植被的,只有切換視角到靠近的地方才看得到。這就是所謂的LOD(LevelsofDetail),也就是多細(xì)節(jié)層次。添加相鄰地形有時(shí)候我們會(huì)覺(jué)得當(dāng)前的地形還不夠大,那么需要添加相鄰的地形。在Hierarchy視圖中選中當(dāng)前地形對(duì)象,在Inspector視圖的Terrain工具欄中點(diǎn)擊第一個(gè)按鈕,可以看到在當(dāng)前地形的周圍出現(xiàn)了幾個(gè)線框,只要點(diǎn)擊任何一個(gè)線框,就會(huì)添加一個(gè)相鄰的地形。更換天空盒通過(guò)菜單打開(kāi)Window-Rendering-LightingSetting,點(diǎn)擊Environment-SkyboxMaterial屬性最右側(cè)的小圖標(biāo),從打開(kāi)的窗口中選擇所需的天空盒素材。創(chuàng)建和使用光源(實(shí)戰(zhàn))王寒目錄案例描述案例實(shí)施案例描述案例描述通過(guò)在場(chǎng)景中添加設(shè)置不同的光源,可以讓場(chǎng)景顯得更加豐富多彩,更加貼近真實(shí)。為了讓大家更直觀的了解Unity3D中對(duì)不同光源對(duì)象的使用,我們將創(chuàng)建一個(gè)全新的項(xiàng)目來(lái)演示。案例實(shí)施案例實(shí)施-添加光源Step1.創(chuàng)建一個(gè)新項(xiàng)目,命名為MyLightsStep2.添加場(chǎng)景中的物體(通過(guò)從菜單欄選擇GameObject-3DObject,在場(chǎng)景中添加一些簡(jiǎn)單的幾何體對(duì)象)Step3.調(diào)整平行光的各項(xiàng)屬性(角度,色彩,強(qiáng)度等)Step4.添加點(diǎn)光源,并設(shè)置其屬性Step5.添加聚光燈,并設(shè)置其屬性案例實(shí)施-設(shè)置燈光烘焙1)在Hierarchy視圖中選中場(chǎng)景中除了MainCamera和DirectionalLight之外的游戲?qū)ο蟆?)在Inspector視圖中,點(diǎn)擊Static右側(cè)的下拉箭頭,選擇ContributeGI。這樣就完成了第一步,告訴系統(tǒng)哪些物體需要被烘焙。3)隨后選擇場(chǎng)景中的DirectionalLight、PointLight和SpotLight,將Mode設(shè)置為Baked?,F(xiàn)在我們可以開(kāi)始烘焙了。4)在頂部菜單欄中選擇Window-Rendering-LightingSettings,即可打開(kāi)燈光設(shè)置按鈕。取消底部AutoGenerate選項(xiàng)的勾選,點(diǎn)擊GenerateLighting即可開(kāi)始烘焙案例實(shí)施-設(shè)置燈光烘焙稍等片刻烘焙結(jié)束后,可以看到場(chǎng)景中的燈光發(fā)生了細(xì)微變化。接下來(lái)運(yùn)行該場(chǎng)景,在Scene視圖中,之前勾選為ContributeGI的對(duì)象無(wú)法被移動(dòng),修改DirectionalLight的角度會(huì)發(fā)現(xiàn),對(duì)象的陰影并不會(huì)改變。修改PointLight的顏色、范圍等,同樣場(chǎng)景不會(huì)有任何改變。 如果場(chǎng)景中的燈光發(fā)生了變化,開(kāi)發(fā)者在需要手動(dòng)再次進(jìn)行烘焙,場(chǎng)景中的光效才會(huì)發(fā)生改變。創(chuàng)建雪花飄落的粒子特效王寒目錄案例描述案例實(shí)施案例描述在有些項(xiàng)目中,我們需要模擬真實(shí)世界的環(huán)境,比如刮風(fēng)、下雨、下雪,甚至雷電等等。對(duì)于這類環(huán)境效果,并不適合使用3d模型的方式來(lái)呈現(xiàn)。這個(gè)時(shí)候,我們需要借助粒子特效來(lái)實(shí)現(xiàn)自己想要的效果。在這個(gè)案例中,我們將一起學(xué)習(xí)如何使用Unity3D中的粒子系統(tǒng)來(lái)創(chuàng)建雪花飄落的特效。在掌握了粒子系統(tǒng)的基本用法之后,開(kāi)發(fā)者還可以嘗試創(chuàng)建其它的環(huán)境特效。案例描述案例實(shí)施開(kāi)始前的準(zhǔn)備Step1.創(chuàng)建一個(gè)新項(xiàng)目,命名為SnowFallingStep2.導(dǎo)入所需美術(shù)資源(找到snow.png文件并拖動(dòng)到項(xiàng)目視圖中)導(dǎo)入后選中它,在Inspector視圖中勾選AlphaIsTransparent,然后點(diǎn)擊Apply創(chuàng)建粒子系統(tǒng)Step1.在Hierarchy視圖中右鍵單擊,選擇Effects-ParticleSystem,從而創(chuàng)建一個(gè)新的粒子系統(tǒng)Step2.把新創(chuàng)建的粒子系統(tǒng)更名為SnowFalling,同時(shí)需要在Inspector視圖中將Transform中Rotation的X值設(shè)置為90,從而讓粒子效果更改方向創(chuàng)建粒子材質(zhì)Step1.在Project視圖中右鍵單擊,選擇Create-Material,并將其命名為SnowMaterialStep2.選中SnowMaterial,在Inspector視圖中將Shader的類型默認(rèn)的Standard更改為Particles-StandardUnlitStep3.此外,還需要把RenderingMode更改為Cutout,從而去掉外輪廓.Step4.將Albedo設(shè)置為此前添加的snow.png將粒子材質(zhì)添加為粒子系統(tǒng)的組件在Hiera

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論