※需先安裝Steam,並使用Steam開啟VR裝置
恩...真的很簡單,難就難在UI介面的配置.........
先開啟一個新專案
Windows → Asset Store或使用Ctrl+9開啟Asset Store
搜尋SteamVR,下載並引入專案內
引入完畢後會出現這個視窗,選擇 Accept All
之後可先將場景上的Camera移除,並將 SteamVR 的 CameraRig 拖入場景中
此物件所照到的東西就是Vive頭盔內看到的畫面了~~
下面這張圖的紅框處,影響的是Vive使用者移動的範圍,也就是會在這個邊緣顯示出綠色網狀物,相當於提醒使用者這是牆壁
建議可以選擇Calibrated,也就是使用Vive的房間設定,此選項能讓使用者自由選擇遊玩空間
接下來就是用程式碼來取得兩隻控制器的按鈕狀態了~
新增一個C# script,命名為Controller
using UnityEngine;
using Valve.VR;
public class Controller : MonoBehaviour
{
private SteamVR_TrackedObject trackObj;//控制器
//取得控制器的哪個按鈕被壓下、放開、觸碰
private SteamVR_Controller.Device controller
{
get
{
return SteamVR_Controller.Input((int)trackObj.index);
}
}
//這個範例示範如何確認控制器的選單鈕是否被按下
private EVRButtonId button = EVRButtonId.k_EButton_ApplicationMenu;
private bool buttonPressed;
private void Start ()
{
trackObj = GetComponent<SteamVR_TrackedObject>();//取得控制器腳本物件
}
private void Update ()
{
if(controller == null)
{
Debug.Log("控制器並沒有被初始化");
return;
}
buttonPressed = controller.GetPressDown(button);//取得控制器的選單按鈕是否有被按下
Debug.Log(buttonPressed);
}
}
之後把腳本掛在控制器上就完成了~
P.S.最先開啟電源的控制器就是右手。
留言列表