【VR遊戲】封神榜傳
領悟
導入SteamVR和VRTK,SteamVR要和CameraRig位置保持一致。
1.可以創建多個scene,然後進行連接跳轉。但是創建好之後要自己重新導回scene
附:刪除MainCamera,添加SteamVR和CameraRiq是必須的。
2.實現瞬移功能: Vivo Teloport
(1)然後給左右手柄:VRTK_ControllerEvents,接收手柄的所有輸入【基礎類】。
添加腳本VRTK_BezierPointer,貝塞爾曲線的指針;
(2)然後給CameraRig添加VRTK_Basic Teleport,處理camera的一些移動。
出現了一個問題:手柄瞬移,但是視角沒有瞬移。
MainCamera要刪掉,不然手柄沒辦法和視角同步。
3.添加UI
(1)添加UI-Canvas-Image,把Canvas的Render Mode改成‘世界’
(2)添加圖片,改類型為sprite(如果不轉不能添加到image上面)
(3)增加交互功能。button,添加Button組件(使用VRTK) VRTK_Button,然後添加UI-Button改變顏色
(4)找到左手柄添加腳本:監聽按鍵指針--“VRTK_Controller Events”,激光指針腳本“VRTK_Simple Pointer(把左手柄加進去)”--顯示激光射線(和上面貝塞爾很像)
添加和UI交互的腳本(指針)--VRTK_UI Pointer(和UI交互的指針)。同樣的腳本,給右手柄也添加一份。
(5)做一個UI列表:在Canvas下添加Panel,添加布局組件(設置多行多列):Grid Layout Group;然後在Panel下面加入8個button;然後添加8張圖片,改成Sprite屬性(凡是想變成UI的圖片,都要變成Sprite屬性),然後點擊右下角的Apply,然後再button下的Image-Source Image添加圖片,然後設置間隔,限制為兩行。然後設置指向(highlighted)和點擊(pressed)後顏色。
(6)這節說一說VR的交互,寫代碼驅動邏輯
註:圖片是要加到button上的(image),開始按鈕使用panel(添加Grid Layout Group,添加完這個之後沒辦法調整左右上下變化,重新改用image)
寫好腳本之後,指定panellist和startbutton,在開始按鈕-image下的On Click添加事件,然後把Canvas拖進去,然後選擇UI.ShowPanelList.如果需要跳轉主界面,我只需要在ShowPanelList裏面寫scene寫true就好了。
normalized
4.弓箭制作流程:
(1)箭的細節,復制一份,然後把源文件來出來保存到prefabs,復制後的那份做弓箭起始點。把ArrowStart屬性只保留transform。
(2)調節好弓的大小之後放到左手柄,記得保證位置全為0(這樣才能貼在手柄上)
【VR遊戲】封神榜傳