企業(yè)名稱:天津藝廊文化傳播有限公司
聯(lián)系人:方經(jīng)理
電話:022-26323252
手機:15522572827
郵箱:2906867048@qq.com
傳真:022-26323252
網(wǎng)址:http://www.51mnmn.cn
地址:天津市和平區(qū)勸業(yè)場街濱江道200號-8633
這篇我們來說下手柄菜單的制作,首先選擇一個手柄在下面創(chuàng)建一個Canvas,將Canvas的render mode模式改為World Space,并將Canvas的大小改為0.001.在Canvas下創(chuàng)建一個Image,這里用于我們按下菜單鍵后跳出的信息。導(dǎo)入一張Image設(shè)置為Sprite類型,并添加到Canvas下的image中,并調(diào)整Image的Rect Transansform,我們可以運行后根據(jù)場景中的效果進行調(diào)整,如下圖所示。
這篇我們來說下手柄菜單的制作,首先選擇一個手柄在下面創(chuàng)建一個Canvas,將Canvas的render mode模式改為World Space,并將Canvas的大小改為0.001.在Canvas下創(chuàng)建一個Image,這里用于我們按下菜單鍵后跳出的信息。導(dǎo)入一張Image設(shè)置為Sprite類型,并添加到Canvas下的image中,并調(diào)整Image的Rect Transansform,我們可以運行后根據(jù)場景中的效果進行調(diào)整,如下圖所示。
下面我們開始寫代碼來控制菜單的出現(xiàn),創(chuàng)建一VR_Menu_Test.cs腳本,并掛在在左手柄上。這里我就直接使用VRTK插件來處理一些事件。
首先引入我需要的VRTK插件和Dotween插件,還有UI程序集。
在開始時候設(shè)置菜單不顯示和大小為0
指定一個事件處理函數(shù)
構(gòu)造事件處理函數(shù),圖片顯示和消失的判斷。使用Dotween實現(xiàn)圖片顯示和消失的效果。
保存代碼后,指定變量,如下圖所示。
完成以后,點擊Play測試,當我們按下左鍵菜單鍵就會顯示圖片。再按下就會消失。
這里說一點,VRTK工具包也給我們提供很多方面的功能,打開文件夾SteamVR_Unity_Toolkit下的Prefab文件夾。這里面的ControllerTooltips預(yù)制體用于一些新手引導(dǎo),介紹手柄按鍵的功能。這里我們將此預(yù)制體拖拽到左手柄下。
選中該預(yù)制體可以在Inspector視圖中修改按鍵功能描述文本,顏色及模型。這里我將菜單鍵的描述改為游戲背景介紹,根據(jù)自己情況更改。運行游戲后可以看見如下圖所示。
RadialMenu預(yù)制體為環(huán)形菜單,將剛剛預(yù)制體設(shè)為false,再將該預(yù)制體拖拽到左手柄下,展開RadialMenu子物體,選中Panle后,再Inspector面板中,更改菜單的數(shù)量并設(shè)置每個選項對應(yīng)的事件。這里我們設(shè)置Buttons的size為5,并導(dǎo)入五張Image都設(shè)置為Sprite類型。展開Element后將Image對應(yīng)拖拽到Button Icon。
設(shè)置后以后運行游戲,當我們觸摸TouchPad后會出現(xiàn)圓形菜單,我們可以滑動選擇需要選擇的Element。如下圖所示。
這里當選擇到某一Element后,可以有四種事件如如圖10,這里事件的觸發(fā)我們再前面的文檔中已有實現(xiàn)過,這里可以自己嘗試一下。