分享一種Oculus Go實作的優化技術
Fixed Foveated Rendering
超陽春偷懶版的固定注視點渲染。
正常的(動態)注視點渲染需專門硬體
高速即時偵測眼球看的方向,
然後再分配運算資源在真正注視位置。
技術複雜成本不便宜,研究方案很多,但幾乎沒有主流產品實作上市。
OculusGo搞了窮人版的"固定"注視點渲染。
機器完全不知道你看哪裡,自動假設你眼球是正視前方中間。然後旁邊外圍用比較低解析
度去運算,節省GPU效能。
畢竟是S820手機晶片,本來效能就差PC很多倍,所以算聰明取巧。
盡量把有限資源集中在中間。
中央1:1解析度是100%點對點運算,
越往外圍變成以1/2, 1/4, 1/8, 1/16解析度運算。要多低可由App控制.
那用戶眼球亂轉動怎麼辦?
就你用戶自己培養習慣.....盡量用轉頭取代轉動眼睛。
開發者可透過API決定哪些時候不使用FFR.
或是FFR最大影響程度到多少。
例如全畫面選單UI時,效能過剩,就不必FFR.
FFR會造成邊緣畫質下降。
但是對手機來說,在高運算負荷場景,反而是優化品質。因為寧可犧牲邊緣,也要跑得動
不掉格.....
掉格的影響比什麼都嚴重。
這原理有一點點類似PC VR調整SuperSampling去減少或加大運算量。
只是FFR只影響邊緣外圍,而且是故意把畫質調差以提升流暢度。
但不會像調低SuperSampling連中間也一併影響。
有優化資源分配的意義。
即使如此效能仍跟PC差距很大。
但能讓OculusGo不用砸較昂貴高規S835/845晶片的成本,來滿足入門基本效能需求。
GEAR VR跟這台比較,兩個規格有差很多嗎?(排除一個要手機一個不用手機的差異)
純VR部分幾乎沒差,性能則是看Gear配那台手機而且Go比高階手機便宜很多。性能可能也不輸,因為手機散熱問題常會降速一體機有比較寬大空間處理發熱問題。類似Gear弄台便宜一體機,更能優化設計
作者:
zebb 2018-05-05 23:38:00作者:
GR3eeeN (豬豬)
2018-05-06 09:33:00推樓上的文章 講解的超詳細
作者:
zebb 2018-05-06 22:37:00中央區域加強渲染的部分K大寫的比較詳細,搭配看更清楚
其實就GPU而言,820/821跟後來的S835的運算單位是一樣多,差在製程與局部架構優化,時脈贏一點較省電根據oculus資料FFR全開測到增速25%推測已讓Go繪圖性能跟用S835的對手能平起平座,以些微畫質為代價。72hz模式實際使運算負擔增加不少所以也是讓開發者決定,大概只有繪圖非常簡單的遊戲能開。手機晶片只耗3-4W,硬撐雙眼高解析若能穩60或72就已經很不容易
作者:
u341153 (練雲)
2018-05-07 13:56:00推這文
作者:
Toge (To Valhalla!)
2018-05-07 14:39:00820,那我手上的Zenfone AR + Daydream好像還比較好....
其實Go也是821, 講S820也ok820/821其實是相同架構相同製程Go開發機用820, 最後銷售用821但兩者幾乎沒不同。所以跟zenfoneAR處理能力相同可能稍強,因散熱空間大+FFR技術不過重點是生態系,Go接收Gear資源起步慢的Daydream大概很難抗衡