Htc Vive的空間大小可以通過幾個方法解決,下面跟大家講的是起點位置平移的解決方法。
起點位置平移
分兩步:
一個是視覺上,就是在游戲編輯器模式下,讓玩家在藍(lán)色區(qū)域的起點角點位置。這個容易,就是還是平移。
平移誰呢,平移藍(lán)色區(qū)域,把剛才縮放的那個預(yù)制體的父節(jié)點做了平移,項目中的平移位置為(4.2,0,4.2)即可。這部分就搞定了。
第二部分,就是比較繁瑣一點了。
說這個問題之前,需要稍微說下SteamVR插件的運(yùn)行時和編輯狀態(tài)的相機(jī)差別。
這個是編輯器模式下的相機(jī)狀態(tài)。
但是在運(yùn)行時候,相機(jī)的層級結(jié)構(gòu)會發(fā)生較大的變化。
可以看到eye作為附節(jié)點,ears作為子節(jié)點,而head則被隱藏了。
具體代碼處理是在SteamVR_Camera.cs中的OnEnable中處理。
部分代碼:
還有ears的處理代碼,設(shè)置ears的相機(jī)參數(shù):
為什么講了這么多結(jié)構(gòu)呢?因為它影響到了玩家起點平移的算法和處理。怎么處理呢?
其實是蠻簡單。給相機(jī)的父節(jié)點在初始化時候,重置一個與相機(jī)初始化一個相反的參數(shù)。
為什么呢?這正是為了抵消相機(jī)在場景中從(0,0)點作為起點的變化啊.
具體代碼:
這個根據(jù)自己需要來處理的按鍵和時間自動開始。可以不這樣用按鍵啥的。
這里順便說一句: 就是要添加手柄,只需要把手柄腳本放這節(jié)點下,然后設(shè)置左右手柄即可。
手柄在隨后中,并不會由于位移的加速對其造成影響。