虛擬現(xiàn)實(shí)與增強(qiáng)現(xiàn)實(shí)開發(fā)實(shí)戰(zhàn) 課件 第7章 VR游樂園_第1頁
虛擬現(xiàn)實(shí)與增強(qiáng)現(xiàn)實(shí)開發(fā)實(shí)戰(zhàn) 課件 第7章 VR游樂園_第2頁
虛擬現(xiàn)實(shí)與增強(qiáng)現(xiàn)實(shí)開發(fā)實(shí)戰(zhàn) 課件 第7章 VR游樂園_第3頁
虛擬現(xiàn)實(shí)與增強(qiáng)現(xiàn)實(shí)開發(fā)實(shí)戰(zhàn) 課件 第7章 VR游樂園_第4頁
虛擬現(xiàn)實(shí)與增強(qiáng)現(xiàn)實(shí)開發(fā)實(shí)戰(zhàn) 課件 第7章 VR游樂園_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

VR游樂園Adesignercanusedefaulttexttosimulatewhattextwouldlooklike.Itlooksevenbetterwithyouusingthistext.目錄content01初始場景02游戲場景搭建03游戲功能制作

04音效、場景跳轉(zhuǎn)PART01初始場景Adesignercanusedefaulttexttosimulatewhattextwouldlooklike.Itlooksevenbetterwithyouusingthistext.初始場景界面創(chuàng)建初始的游戲界面,將圖片移動(dòng)到合適的位置。給開始和退出按鈕button組件。創(chuàng)建初始游戲StartScene和我們游戲場景MainScene。創(chuàng)建StartScene腳本,引入U(xiǎn)I和SceneManagement命名空間。給開始和退出按鈕定義點(diǎn)擊事件,點(diǎn)擊開始按鈕時(shí),進(jìn)入我們MainScene。PART02游戲場景搭建Adesignercanusedefaulttexttosimulatewhattextwouldlooklike.Itlooksevenbetterwithyouusingthistext.游戲場景搭建攝像頭參數(shù)設(shè)置刪除默認(rèn)攝像機(jī),將SteamVR文件夾prefab中的CameraRig預(yù)制體拖入場景中并將位置坐標(biāo)歸零。選中CameraRig中的“eye”組件,修改其攝像機(jī)渲染范圍為10000,并且將CameraRig的Z軸坐標(biāo)修改為-3500.游戲場景搭建游樂項(xiàng)目選擇場景的搭建,創(chuàng)建默認(rèn)場景,將游戲窗口顯示比例設(shè)置為1920*1080將導(dǎo)入素材中的Galaxy.fbm文件夾中的Galaxy天空球預(yù)制體拖入場景中后位置歸零,并修改其縮放大。游戲場景搭建在畫布下創(chuàng)建文本Text,修改文字為Title,調(diào)整字體位置、方框入圖2-7所示,字體大小為150,顏色為白色在畫布下創(chuàng)建Image組件,將導(dǎo)入的UI文件夾中的右按鈕素材,拖入到Image組件中,并點(diǎn)擊SetNativeSize,讓素材恢復(fù)原始大小,調(diào)整其位置與大小如圖2-9所示,同理制作另一個(gè)切換按鈕以及選擇按鈕的UI。文本設(shè)置按鈕設(shè)置創(chuàng)建一個(gè)面片作為游樂設(shè)施的選項(xiàng)卡Fairground-Material文件夾中選擇一個(gè)游樂項(xiàng)目的材質(zhì)球賦予面片,并在Asset目錄創(chuàng)建一個(gè)文件夾命名為Prefab,創(chuàng)建一個(gè)空對(duì)象并且命名為GameItem將面片作為其子集,拖入Prefab制作成預(yù)制體,并刪除場景中的GameItem。創(chuàng)建一個(gè)空對(duì)象命名為GameItemSpawn將其位置坐標(biāo)重置,創(chuàng)建一個(gè)腳本命名為GameItemSpawn掛載在同名空對(duì)象上雙擊GameItemSpawn腳本開始編寫生成項(xiàng)目選擇卡片的方法,定義一個(gè)數(shù)組存儲(chǔ)材質(zhì)球并獲取項(xiàng)目數(shù)量,獲取預(yù)制體,利用For循環(huán)將預(yù)制體進(jìn)行環(huán)狀生成。將10個(gè)游樂項(xiàng)目的材質(zhì)球拖入腳本創(chuàng)建的數(shù)組中,同時(shí)也將選項(xiàng)卡的預(yù)制體放入。運(yùn)行測試將生成四個(gè)選項(xiàng)卡,效果如圖使用VRTK實(shí)現(xiàn)交互

將CameraRig進(jìn)行改裝,創(chuàng)建一個(gè)空物體命名為VRTK重置其位置,再添加腳本搜索框中輸入VRTK_SDKManger搜索并掛載該腳本,在空物體VRTK下再創(chuàng)建一個(gè)空物體命名為VRTK_Setup,搜索同名腳本進(jìn)行掛載,選擇SteamVR作為我們的SDK如圖2-17,腳本下方會(huì)出現(xiàn)報(bào)錯(cuò),將CameraRig組件作為其子集拖入點(diǎn)擊對(duì)象VRTK,點(diǎn)擊AutoPopulate將子級(jí)的組件綁定。由于VRTK特性,需要另外設(shè)置控制器的射線,首先創(chuàng)建空對(duì)象命名為VRTK_Scripts,在其下方創(chuàng)建一個(gè)空對(duì)象命名為ControllerRight作為子級(jí),并添加名為VRTK_Point腳本發(fā)射射線,需掛載將射線渲染出現(xiàn)的VRTK_StraightPointerRender腳本,以及獲取手柄按鍵的VRTK_ControllerEvents腳本?;氐綄?duì)象VRTK,將VRTK_Scripts的子級(jí)ControllerRight賦值相應(yīng)位置如左圖所示,以及ControllerRight的VRTK_Point腳本需將VRTK_StraightPointerRender腳本賦值至相應(yīng)位置如右圖,同理制作成左手柄的射線。需注意VRTK_Setup的顯示必須是關(guān)閉狀態(tài)再進(jìn)行運(yùn)行,手柄射線才能夠正常使用,通過圓盤鍵觸發(fā)(HTCvive),射線效果射線效果為了實(shí)現(xiàn)射線與UI的交互,為ControllerRight添加VRTK_UIPointer腳本,將觸發(fā)方式修改為扳機(jī)鍵按下時(shí)。為畫布Canvas添加VRTK_UICanvas腳本。為畫布中的左右切換鍵添加Button組件,并將被射線擊中時(shí)的顏色修改為紅色,Select鍵也添加Button組件,但是變化類型改為spriteSwap模式,并將綠色與黃色的選擇按鍵拖入對(duì)應(yīng)的框射線擊中按鈕組件

游樂項(xiàng)目的切換效果實(shí)現(xiàn),導(dǎo)入資源文件中的DOtween插件用于優(yōu)化切換動(dòng)畫,打開GameItem腳本,引入命名空間DG.Tweening如圖2-29,將腳本定義為Instance方便按鍵事件調(diào)用,并在Awake方法下為Instance賦值,再定義一個(gè)整型變量Index并賦值用于之后控制旋轉(zhuǎn)方向,編寫旋轉(zhuǎn)方法實(shí)現(xiàn)三個(gè)按鈕的點(diǎn)擊事件,在Canvas下創(chuàng)建一個(gè)空對(duì)象命名為GameItemPanel,按住Alt鍵選擇自適應(yīng)大小,將三個(gè)按鍵與文本作為其子級(jí),并掛載新建同名GameItemPanel腳本,開始編寫注冊(cè)按鈕的事件,引入U(xiǎn)I命名空間,定義按鍵名稱與三個(gè)按鍵命名一致,使用監(jiān)聽方法獲取與調(diào)用GameItemSpawn中的方法。讓UI中的文本顯示游樂項(xiàng)目名字,找到導(dǎo)入的課程資源中的Resources文件夾中的游樂項(xiàng)目名字文本,確保與GameItemSpawn賦值的材質(zhì)球名字順序一致,繼續(xù)編寫GameItemPanel腳本,通過文件夾中的文本來修改UI中的文本,定義一個(gè)文本Title用于獲取項(xiàng)目對(duì)應(yīng)的游樂項(xiàng)目名稱,定義一個(gè)字符串變量,在ReadFameItemNameText()方法中用于接收文檔中的用回車符分隔開的項(xiàng)目名字,在Init方法中將Title獲取到的字符串賦予GameItemPanel下的同名的子級(jí)文本組件,通過手柄扳機(jī)鍵觸發(fā)項(xiàng)目切換。PART03游戲功能制作Adesignercanusedefaulttexttosimulatewhattextwouldlooklike.Itlooksevenbetterwithyouusingthistext.

將我們的改裝完成的VRTK組件拖入到之前創(chuàng)建的Prefab文件夾中制作成為預(yù)制體,選擇Rest文件夾中的RollerCoaster場景,例:選用過山車項(xiàng)目,在游樂設(shè)施的子級(jí)中找到座椅的模型,將我們的預(yù)制體拖入成為它的的子級(jí),將CameraRig的位置歸零,調(diào)整父級(jí)VRTK的縮放、旋轉(zhuǎn)與位置與座椅一致游戲功能制作PART04游戲音效、場景跳轉(zhuǎn)Adesignercanusedefaulttexttosimulatewhattextwouldlooklike.Itlooksevenbetterwithyouusingthistext.我們創(chuàng)建AnimController的腳本,獲取Animation的組件。我們獲取動(dòng)畫片段的時(shí)間,通過判斷時(shí)間來播放我們的歡呼音效。我們調(diào)用SceneManager方法,來實(shí)現(xiàn)當(dāng)動(dòng)畫片段播放完畢后倒計(jì)時(shí)跳轉(zhuǎn)場景。最后我們將我們歡呼的音效賦給我們的Che

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論