1、360°旋轉(zhuǎn)視角

添加其余的視角-擴張

添加好的層級關(guān)系:位置-頭部-眼睛-耳朵

2、集成手柄
創(chuàng)建游戲?qū)ο螅謩e為左右手,添加腳本:
1、SteamVR_ControllerManager

2、SteamVR_TrackedObject 此類是根據(jù)Index來獲取跟蹤信息并反饋到Unity中。
注:修改Index為none

3、SteamVR_GameView
這個腳本主要負責(zé)將游戲畫面繪制到窗口上去

4、代碼獲取手柄對象:
//1獲取到某個按鍵的狀態(tài)
var device = SteamVR_Controller.Input(uint);
device.GetTouchDown(SteamVR_Controller.ButtonMask)
//2獲取當(dāng)前所有的按鍵狀態(tài)
var system = OpenVR.System;
system.GetControllerState(uint, ref VRControllerState_t))
5、手柄震動
public void TriggerHapticPulse(ushort durationMicroSec = 1500, EVRButtonId buttonId = EVRButtonId.k_EButton_SteamVR_Touchpad)
{
var vr = OpenVR.System;
if (vr != null)
{
var axisId = (uint)buttonId - (uint)EVRButtonId.k_EButton_Axis0;
vr .TriggerHapticPulse(ControllerIndex, axisId, (char)durationMicroSec);
}
}
或者可以
var device = SteamVR_Controller.Input(uint);
device. TriggerHapticPulse();
6、SteamVR_Controller
控制器的相關(guān)信息都包含在SteamVR_Controller這個腳本之中
而這個腳本是被SteamVR_Render中的Update函數(shù)調(diào)用,從而循環(huán)獲得手柄相關(guān)信息

當(dāng)我們需要使用這些事件時直接監(jiān)聽這些事件即可。

ButtonMask類:手柄各按鍵的名稱
Input()函數(shù):根據(jù)Index初始化Device[]數(shù)組,并實例化所有16個Device。
Device類:最重要的類,封裝了跟蹤設(shè)備的全部信息。
Device類包含:


GetAxis:獲取手柄上圓盤坐標(biāo)或Trigger的行程值(0-1),函數(shù)默認參數(shù)是手柄上的Touchpad。共有5個AxisId參數(shù)可選,0是TouchPad,1是Trigger,2,3,4應(yīng)該是沒有用的,且此函數(shù)只接受EVRButtonId類參數(shù)而不接受ButtonMask。
TriggerHapticPulse:手柄震動控制函數(shù),參數(shù)名稱解釋的是時間,默認500,但實際上控制的是震動的強度。默認AxisId是EVRButtonId_touchpad,選擇其他EVRButtonId沒用(等價參數(shù)axis0可以),其會調(diào)用OpenVR中的同名函數(shù)。參數(shù)超過4000會無效,導(dǎo)致震動不觸發(fā)??梢酝ㄟ^協(xié)程的while(true)+waitforsecond控制震動間隔,通過stop協(xié)程控制震動結(jié)束。同上4操作。

GetHairTrigger
GetHairTriggerDown:定義為有false轉(zhuǎn)至true的過程,判斷先前狀態(tài)和當(dāng)前狀態(tài)。
GetHairTriggerUp:定義為有true轉(zhuǎn)至false的過程,判斷先前狀態(tài)和當(dāng)前狀態(tài)。
HairTrigger是檢測當(dāng)你握住扳手超過一個固定值(0.1,可調(diào))時即觸發(fā)的狀態(tài)。利用Trigger的變化量來做一個功能的觸發(fā)
7、SteamVR_LaserPoint
主要實現(xiàn)手柄當(dāng)前指向物體與離開物體的兩個方法事件。使用射線檢測

3、手柄渲染
SteamVR_RenderModel:該組件用于渲染手柄的模型,并且跟蹤手柄的位置

4、活動空間(即玩家的活動空間)
SteamVR_PlayArea
用于顯示游玩區(qū)域

5、HTC Vive參數(shù)
HTC vive
參數(shù)配置:
分辨率:單眼 1200 x 1080 的分辨率
刷新率:最高可達 90hz
位置追蹤范圍:4.5m x 4.5m
其他配置:配套的帶有位置追蹤的游戲控制器等
推薦電腦配置:
處理器:Intel i5-4590/AMD FX 8350同等或更高配置
內(nèi)存:4GB及以上
顯卡:NVIDIA GTX970/AMD R9290同等或更高配置
系統(tǒng):windows 7 SP1 或更高版本
視頻輸出:HDMI 1.4或者DisplayPort 1.2或更高版本
USB接口:1 x USB 2.0 或更高版本的端口
游戲區(qū)域要求:
空間定位:空間最小為 2 米 x 1.5 米 (6 英尺 6 英寸 x 5 英尺)
基站間最大距離為 5 米 (16 英尺)
站立/坐立:無最低空間要求
6、參考:
http://www.itdecent.cn/p/8cce89d2aef3
一個人的路需要更多人的陪伴:歡迎加群: 134688909 一起交流,分享心得,獲取項目資源。