VR很爽,可是暈眩問題怎么破?
隨著VR產業漸漸進入人們的視線VR熱潮正處于爆發前期縱觀國內幾家VR領域的尖端企業中國的VR硬件與國際水準相比并不低如果以國際標準Oculus的VR硬件來說可以說與其基本持平對于過國內廣大普通產品使用者來說無疑是個好消息國內的VR團隊在保持硬件的技術過關的前提下性價比頗高
然而就算是最尖端的VR產品目前依舊有致命的硬傷暈眩感太強很多VR體驗者表示在一段時間使用VR產品后會出現不適惡心甚至嘔吐這成為了VR發展最大的一個絆腳石解決暈眩問題成為VR的燃眉之急
一為什么會產生VR暈眩?
VR暈眩原理其實非常簡單因為眼睛看到的(VR)畫面與從耳朵接收到的(真實位置)信息不匹配導致腦負擔加大從而產生暈眩感
產生這樣的問題主要有兩個方面
一方面和3D暈眩癥的道理有點類似3D特效大片之所以會讓觀眾覺得頭暈是因為3D電影除了大量實焦畫面外還有元素豐富的虛焦布景畫面
畫面里的元素過于豐富像遠處景深里虛焦樹葉就是眾多元素里的一部分但觀看3D電影的時候觀眾必須舍棄虛焦畫面里的這些元素因為這些元素會讓眼球重新聚焦且屢屢聚焦失敗就容易產生3D暈眩癥這就類似在雪山上的人眼球長期搜查不到視覺焦點而造成的雪盲
簡單來說就是畫面太逼真了讓你有身臨其境的感覺身體認為你正在做劇烈的運動或者處于畫面中的狀態但是實際上你是坐在座位上并沒有運動這是一種自我保護的本能大多數人可以通過鍛煉減輕暈眩但是不可能讓人真正去移動一段距離
另一方面是VR硬件的延遲造成時間上的不同步當人轉動視角或是移動的時候畫面呈現的速度跟不上在VR這樣全視角的屏幕中這樣的延遲是造成暈眩的最大問題目前降低延遲是當下減弱VR眩暈的主要手段
二延遲VR領域中降低暈眩的方法
選購虛擬現實設備很重要的一個指標是從轉動頭部到轉動畫面的延遲
而畫面延遲在很大程度上又取決于顯示屏的刷新率目前世界上最先進的虛擬現實設備刷新率在75Hz包括鼎鼎有名的OculusDK2和上海樂相科技的大朋等
75Hz意味著渲染完成到顯示在屏幕上至少需要1秒除以75次等于每次13.3毫秒包括安全保險的時間在內一般是19.3ms的延遲所以任何聲稱自己延遲在19.3ms以下的都是虛假宣傳
那么延遲19.3ms是由什么構成的?
(19.3ms延遲的產生過程)
1首先從頭部轉動到傳感器讀到數據大概需要1ms的時間如果采用世界一流的傳感器那么采樣率在1KHz也就是說每秒鐘可以讀取到一千個數據那么每個數據就是1ms也就得出了這1ms的延遲
2然后數據需要經由單片機傳輸到電腦因為它們的接口是不同的就好像空調的電源插頭不能插到小臺燈的插座里需要一些轉換工作單片機就負責了這樣的轉換數據從傳感器到單片機大概需要1ms因為前面數據的產生需要1ms于是如果不在1ms內將這些數據傳送到單片機那么后來的數據就會被丟棄
3接下來是單片機經由USB線將數據傳輸到PCUSB線具有極高的傳輸速率但是完全由Host端(也就是PC端)控制傳輸的也就是說如果Host端不接收單片機發來的數據那么數據就會被丟棄采用HID方式的情況下Host端會經常檢查是否有數據傳輸上來然后將數據存放到內存所以這個時間在1ms之內至此數據已經到達PC的內存了走完了全部的硬件過程由于數據帶寬通信協議等限制會占用3ms~4ms之間的時間很難再減少了
4在硬件上傳輸完成后就是軟件算法處理的過程了
由于模擬信號本身的噪聲和漂移轉換成數字信號后數據中存在大量的噪聲和漂移于是需要復雜的數字信號處理方法將這些噪聲和漂移過濾掉這樣傳感器傳來的9軸數據就成為了渲染游戲所需的頭部旋轉的四元數旋轉數據處理這個數據一般在1ms以內渲染時只要將這個旋轉的四元數乘以攝像機的坐標就得出了觀察方向可以用于渲染場景通過特殊的算法例如Time-warp,目前最快的算法根據先前的數據處理得到的圖像完成真正被顯示的畫面幸虧有了Time-warp算法我們可以基本忽略渲染場景的延遲
5當場景渲染完之后還需要做反畸變反色散等處理這些處理一般需要消耗GPU0.5ms的時間為了安全起見將這個時間設為3ms來保證準備傳輸下一幀到顯示器也就是下一個垂直同步信號來之前GPU必定能把反畸變反色散做成
6然后就是傳輸圖像到顯示器的時間了如前所述按照75Hz計算那么需要13.3ms到此就結束了嗎?不是的還有顯示器將圖像顯示出來的時間由于LCD顯示器是晶體由電場控制旋轉的物理過程所以傳統的LCD顯示器需要15~28ms不等的時間來響應而最新的OLED技術則將這個時間減少到了微秒級
好了讓我們將這些時間累加起來3ms+3ms+13.3ms=19.3ms當然這是最理想的情況還有可能CPU的性能USB丟包等問題可能導致達不到這樣低的延遲
國內大朋和國際標準Oculus的產品都是采用此種算法最低延遲是完全一致的在全世界范圍內19.3ms的延遲是當下最科學最可信的延遲推算時間
當然Oculus展望未來可以將延遲降得更低也不是吹噓的從上面的算式可以看出主要瓶頸在13.3ms這個延遲過程上通過一些特殊的方法可以減少一半甚至更少但這需要硬件廠家操作系統游戲開發者共同的努力
目前看來VR硬件改善延遲是改善眩暈最好的解決方法所有需要的時間不斷壓縮能夠來降低畫面的延遲從硬件上先解決造成暈眩的問題其次就像之前的3D眩暈一樣使用者通過一段時間的適應才能使VR成為真正意義上的虛擬現實產物