Oculus具體提供給三星Gear VR什麼技術?
為什麼Gear VR上印有powered by Oculus?
最最核心的一點是, Oculus首次在手機VR上達成了20ms內的延遲, 目前還沒有第二家做到, 這也拉開了與Cardboard(包括各種塑料版本)的體驗差距
Barrel Distortion: 提供了比Cardboard更好的FOVChromatic Aberration: 對透鏡的色散問題進行了校正, 避免邊緣像素的RGB不重合Head Tracking: 雖說Cardboard也有, 但是手機內置的感測器精度和頻率(延遲)遠不如GearVR集成的那個, 不過遺憾的是沒有Position Tracking, 只有OrientationAsynchronous Timewarp: 這個是GearVR的核心競爭力, 連PC上還沒普及(需NV驅動和Oculus驅動升級), 大大降低GearVR的延遲, 並能保證在FPS低於60FPS(甚至達到30FPS)時的體驗, Cardboard這時候早就一片殘影了
Direct front buffer rendering: 相對於double buffer (backbuffer) rendering少了點延遲Sound Spatialization: VR下的3D音效表現力不再限於兩個聲道的立體聲, 而是可以通過Head Tracking的支持對聲音進行定位, 可以聽出前後高低甚至環境音的空間位置GearVR SDK: 這個就不用說了Oculus Store: 手機VR應用商店, 這個到底算Oculus幫了三星還是利用了三星呢?- Direct front buffer rendering,根據我們的測試,能減少大概10-20ms的延遲
- 非同步timewrap,也是減小延遲用的
- 其實還有一個,gearVR在每個渲染幀之間中插入black frame,用來減小視覺殘留,不知道這個是不是利用了oled的特性
- 其他還有很多零碎的優化,例如盡量讓繪製和vsync信號對齊、使用mesh來做distortion和色散矯正等等。
儘管遠在開發 3D 遊戲引擎的早期,卡馬克就是受到《星際迷航》的「全息甲板(Holodeck)」、《雪崩》小說的「超元域(Metaverse)」等虛擬現實概念的影響。但 3D 遊戲還遠不是虛擬現實,最多不過是虛擬現實進程中的一小步而已。
直到2012年4月,等卡馬克看到 MTBS3D 論壇上帕爾默·拉奇(Palmer Luckey)所發的 Oculus Rift 原型機的帖子時,大神著實興奮了一把——這才是虛擬現實應有的樣子嘛!於是他赤膊上陣,親手改進原型機早期的不足之處,並進一步改寫《毀滅戰士3》代碼來為一個初出茅廬的小夥子做內容。而在隨後的 E3 遊戲展,卡馬克更是主動召集媒體來演示這台尚在襁褓中的 Rift 原型機,以重新點燃整個技術圈對於虛擬現實的熱情。
▲卡馬克在 2012 E3 上展示 Rift 原型機
早在 22 歲的時候,卡馬克就做出了世界上第一款 3D 電腦遊戲:《德軍總部 3D》。要知道在那個 386、486 的年代,流暢地繪製 3D 圖像可不是件容易的事。3D 遊戲運行很慢的一個重要原因是需要繪製的物體太多,CPU 運算不過來。卡馬克獨闢蹊徑的使用了「射線追蹤」演算法,剔除掉視野外的物體,結合削減多邊形、動態縮放這些技術,終於能創造出一個流暢的三維世界。後來的《毀滅戰士》和《雷神之錘》系列遊戲不僅風靡全球,也成為整個行業的標杆。據說最初的顯卡之所以能被發明出來,就是有人想要玩好《毀滅戰士》。而其後的版本更新,就連 Windows 都要先來打聽卡馬克打不打算支持。
▲德軍總部 3D如今虛擬現實行業的一開始,同樣要受限於計算能力的不足,60Hz 液晶屏上最多維持住 30fps 的圖像,在玩電腦遊戲時或許還能忍受,可戴上 VR 稍微扭頭動動屏幕圖像就會一片混濁,卡到沒法玩……這就是動態模糊。好在卡馬克用非同步時間扭曲(Asynchronous Timewarp)解決了這個難題,就是直接修改圖像渲染參數來生成中間幀,從而能讓圖像的幀率跟得上屏幕本身的刷新率:
「理論上,非同步時間扭曲允許你把一個 30fps 的遊戲升級到 60fps,以更好地匹配屏幕 60Hz 的刷新率。」
▲非同步時間扭曲(Asynchronous Timewarp)
這就解決了虛擬現實難以推廣起來的一大障礙。而今,不論是做顯卡的 AMD、Nvidia,還是對手 HTC 的 Vive 都在使用卡馬克的這個方法來規避當前晶元技術整體計算水平上的局限。
-------------
對於虛擬現實,卡馬克認為移動版的 Oculus 會是未來,這就是為什麼他會看上跟三星合作的 Gear VR 項目,這一點也正是他下定決心離開為之奮鬥20多年的 id 軟體的原因。
不過,跟三星合作的前幾個月卻是困難重重。由於大公司的官僚作風,卡馬克遲遲拿不到三星手機前置緩衝區(front buffer)的訪問許可權,儘管他反覆給三星寫過長篇大論的郵件來解釋這一點的重要性。
意識到三星的人理解不到要點,卡馬克索性直接黑了這部手機,並把做出來的效果拿給三星負責驅動的人看,對方終於能理解到點子上了:
「噢,天哪!這麼做太糟糕了……」
▲黑掉這台 Note 4 吧
這一招很管用。前置緩衝渲染能讓他們減掉兩幀的延遲,而那非常重要!
看到這樣做的真正效果後,三星不僅欣然接受,還特地寫出合適的程序介面來交給卡馬克一個正式的許可權,並開始提供合作預期之外中的一些便利,因為他們明白了卡馬克的建議將會帶來真正的改進。
而這場合作的成果,可不僅僅是三星得以用 Oculus 的技術來生產 Gear VR,Oculus 也終於能讓三星來為 Rift 產品生產專門的 OLED 顯示屏。
儘管這次合作的過程一波三折,但與多年前的坎坷經歷相比,已能算相當順暢了。
那要回到1990年,當時 PC 機的性能不僅比不上蘋果機,就連街機和任天堂的遊戲機都比不上。很多人都想把任天堂的《超級瑪麗》移植到電腦上,可難點在於超級瑪麗每移動一下就要重新繪製整個背景。儘管遊戲背景上只有幾片「白雲」,電腦還是要繪製整片「天空」。
這時卡馬克寫了一段代碼,「欺騙」電腦認為白雲就是整個屏幕,這樣藍色的天空背景不動,直接繪製白雲就好了。
▲超級瑪麗緊接著,連續工作72小時,卡馬克他們一個像素不差地移植了《超級瑪麗3》,並滿懷希望的寄給了任天堂。幾周後,他們收到了任天堂的「親切」答覆:
「小夥子們,幹得不錯,但我們對 PC 機沒有任何興趣。」
現在的虛擬現實設備與手機相比,就像當年的 PC 機與遊戲機。不同的是,如今的三星顯然要比任天堂更明白如何去跟上「時代」的步伐。
-------------
除了基本技術上的進步,虛擬現實現在更缺的就是內容了。
不知道是不是為了彌補當年移植主機遊戲的遺憾,卡馬克將《吃豆人》《刺蝟索尼克》這樣的街機遊戲帶進了虛擬現實,這便是 Oculus Arcade。
同時,為了讓人們在虛擬現實中可以體驗到 IMAX 般的觀影效果,卡馬克還親自幫 Netflix 把 Netflix Living Room 帶進虛擬現實。
不過,要說卡馬克最想要的,那還要數《我的世界》……卡馬克認為它是目前虛擬現實裡面最最重要的遊戲,沒有之一。
▲風靡世界的遊戲《我的世界》
然而,《我的世界》創始人 Markus 卻非常反感 Facebook,並在 Twitter 上公開拒絕了他。
▲Markus 說 Facebook 讓我毛骨悚然
可卡馬克並沒有就此放棄。後來 Markus 的態度也有所軟化,卻最終把《我的世界》以 25 億美元的價格賣給了微軟。於是,卡馬克只好直接接觸微軟:
「我不會向你要求任何東西,只要讓我們去嘗試就行,讓我來嘗試把它做成一個 VR 的遊戲……我非常有信心把它做成一個很酷的東西,所以你們的任何要求我都能同意。」
微軟沒有任何理由拒絕掉這樣的提議,但 Oculus 的律師卻十分擔心卡馬克是白白在為微軟做嫁衣。
可卡馬克極力堅持這個做法,因為這是他現在能為虛擬現實做到的最好的事情:
「這是我們為虛擬現實所能做出來的唯一最為重要的應用,它將確保我們獲得一批狂熱、忠誠的支持者群體來告訴人們虛擬現實為什麼能這麼棒。」
▲卡馬克宣布我搞定《我的世界》了
而《我的世界》之於虛擬現實的重要程度,該行業的著名先驅人物杰倫·拉尼爾(Jaron Lanier)則想到的更多:
「每當一個全新的平台誕生時,開創新經濟模式的方法亦隨之改變……現在啟動一個虛擬現實行業平台的要點在於,我們可以……(創建一個)極其簡單、便捷的小額支付世界,在那裡每一個人都是真正平等的,每一個人都會是買家和賣家,每一個人都是一等公民……再讓我們看看這將會發生什麼奇蹟。那可能會很偉大!……關鍵是你確實需要付出相當的努力和匠心才能做出好東西,做出一個像《我的世界》那樣美好的世界……」
相應的,回想起當年卡馬克與微軟之間的交鋒,其實會有這樣一種感覺——「出來混,遲早是要還的」。
▲比爾·蓋茨:不要打斷我說話
那還是《毀滅戰士》最為火爆的年頭,一心想用多媒體這個賣點來推廣 Win 95 蓋茨打起了這款遊戲的主意。誠然,《毀滅戰士》確實是展現 Win 95 多媒體屬性的最佳應用。
只是還沒等比爾·蓋茨開口去收購,卡馬克就下手從微軟挖走了一員正在為下一代系統準備技術的大將。回過神來的微軟只好去求 id 幫忙,幫忙把《毀滅戰士》移植到 Win 95 上來替微軟吸引用戶,而 id 的回應則是:卡馬克現在沒空。
鎩羽而歸的微軟反過來提議:由微軟自己來把《毀滅戰士》移植過來,id 軟體連一根手指頭都不用動,收益仍全歸 id 所有。卡馬克沒有理由拒絕。最後由微軟出資為《毀滅戰士》Windows 版所舉行的「審判日」發布活動上,比爾·蓋茨還化身遊戲中的一名角色來宣傳視頻中搞怪(上圖)……微軟甚至還在 Excel 95 軟體內精心布置了一枚來自《毀滅戰士》的彩蛋。
以後的結果正是,不惜血本的微軟確實成為了 PC 遊戲平台無可爭議的霸主。
-------------
至於 id 團隊卡馬克他們的高冷,反感微軟的公司文化只是一方面,最關鍵一點在於卡馬克當時確實很忙——忙著開發《雷神之錘》,同時再把 3D 遊戲的技術帶上一個新的高度。
而新的挑戰意味著新的難題,一心求解難題的卡馬克自然是想到了他自學 3D 技術所用的書的作者——計算機圖形學界泰斗邁克爾·亞伯拉什(Micheal Abrash),如今 Oculus 的首席科學家,也就是前面提過的那員微軟大將。
得知此事後,比爾·蓋茨給出優厚的條件力勸亞伯拉什不要跳槽。不過在蓋茨和卡馬克之間,亞伯拉什毅然選擇了陪同卡馬克一同去創造歷史,因為他希望在圖形技術即將取得革命性突破的時刻,自己是置身其中親自參與的。而後來卡馬克離開他一手創辦的 id 軟體加入 Oculus,大抵也是同樣的考慮。
但亞伯拉什比較顧慮的一點則是:每一次在做完一個項目後,自己還能否百尺竿頭更進一步。卡馬克卻能非常有信心地回應:
「我從沒懷疑過,嗯」
確實,當前的卡馬克又在挑戰一項新的高度:為 Gear VR 開發一項內置的位置追蹤技術。
想像一下,只需為 Gear VR 裝上立體攝像頭,再輔以卡馬克風騷的演算法,你的頭顯就能立刻感知並計算外部世界的變動……這意味著你再也不用像 HTC Vive 那樣只能在固定的房間體驗虛擬現實,而是可以自由地探索虛擬世界的全部,想去哪就去哪。
▲網友腦洞可以自由走動的虛擬現實
儘管這一技術還有一大堆的技術細節有待搞定,卡馬克表示他有信心解決好這些問題,並決定把接下來幾個月的時間都安排在該問題上。
他已經認定了移動版的虛擬現實才會是真正的未來。
-------------我的公眾號:geekview3D遊戲開山祖師卡馬克作為Oculus的CTO,和三星合作,來搞GEAR,為了提高幀率,降低延遲,和三星開發人員一起直接修改手機rom底層的相關組件,由於手機硬體更是三星本身開發,因此卡馬克的優化工作即使涉及到手機硬體也不奇怪。
此外Oculus dk2的核心組件,那塊顯示屏,並不是普通的手機屏幕,而是OLED顯示屏,
OLED作為優秀的短餘暉顯示屏,能做到快速的點滅而沒有餘暉,更是能做到75HZ的刷新率。而傳統的液晶顯示器,不但餘暉時間長,一般也只能做到60HZ的刷新率,用於VR顯示其實是不合適的。此顯示技術是三星的核心技術之一,核心到什麼程度:這種屏幕不是你想買三星就賣給你的,而其中的顯示控制晶元更是核心中之核心,一般的手機廠商更難拿到手。即使你買了這個屏幕,沒有原廠的控制晶元,也很難實現75HZ的刷新率。
所以DK2的優秀表現其實是和他使用了三星這塊屏幕有著莫大的關係,而三星能向oculus提供這種屏幕(這個顯示面板是把note3的屏幕配件拿來直接用的,如果拆開DK2,你會看到顯示屏上甚至還有三星的logo XSK),可見兩者合作之深。
總之兩家公司之間不僅僅是互相用一下對方產品這麼簡單,而是進行了非常深入的技術合作。也算是相互利用吧,oculus主要提供三星演算法,三星主要提供oculus顯示屏。
Oculus以幫三星做手機殼為條件交換三星的OLED屏。技術主要是優化演算法,修改Android底層配合三星硬體來降低延遲。所以更新系統要小心喲!
前置渲染,非同步時鐘,事件接管等技術,oculus home等軟體
推薦閱讀: