NVIDIA乾貨:我們正在重新發明顯示工作流水線(上篇)

 2017-12-03 13:26:11.0

虛擬、增強和混合現實(VR、AR、MR)的虛擬體驗是計算機圖像學的新領域。這與往常的遊戲和電影截然不同。本文介紹了NVIDIA發明的虛擬體驗優化全面新系統。



NVIDIA 涵蓋了廣泛的應用領域,包括自駕自動駕駛車、機器人、遊戲和電影圖形。



你可能聽說過NVIDIA在虛擬體驗方面的創新,例如中心渲染、變焦光學、全息技術和光場。本文詳細介紹了我們最近在這方面的工作,但最重要的是展示我們的願景,即如何共同努力,把計算和現實之間的互動轉化為一體。


研究即是未來


我們的願景是讓VR成為所有計算的界面。它將取代手機、電腦、電視機、汽車儀表板。為了使術語簡單化,本文使用VR作為支持所有虛擬體驗的簡寫,包括可以看到現實世界的虛擬體驗。


NVIDIA的使命是創造變革性的技術。技術只有在日常使用中才真正具有變革性。它必須成為我們生活中無縫且透明的部分,才能產生真正的影響力。最重要的技術就是我們認為理所當然的技術。


如果我們要考慮所有的計算和界面,那麼VR遊戲呢?遊戲對於早期使用者來說是一個重要的VR應用。NVIDIA非常重視遊戲,並確保他們在VR中表現出色。然而,VR技術的真正潛力遠不止於遊戲,因為遊戲只是計算的一部分。所以,我們從遊戲開始著手,但現在技術正在擴展到工作、社交、健身、醫療保健、旅遊、科學、教育以及所有計算機現在扮演的角色。



NVIDIA正在為VR革命做出獨一無二的貢獻。1999年,我們已經對消費類計算機進行了改造,推出現代GPU,為消費類應用提供了高性能計算。今天,不僅電腦,還有平板電腦、智能手機、汽車和電視都有GPU。它們提供了曾經被認為是僅高級用戶才能使用的高性能水平。我們因此獲得了生產力、便利和娛樂的新水平。這都要歸功於我們設備中的GPU。



為了讓VR成為我們生活中的一部分,VR系統必須變得更加舒適、易用、價格合理、功能強大。我們正在發明新的頭顯技術,用激光和全息圖驅動的薄型眼鏡取代笨重的VR頭顯。它們將像平板電腦、手機和筆記本電腦一樣應用廣泛,更容易操作,甚至可以隨時在AR / VR / MR模式之間切換。而且會採用全新的GPU和圖形軟件。


這些創新都指向了一種與計算機交互的新方式,這不僅需要新的設備或軟件,還需要一個全新的VR系統。NVIDIA正在用最先進的工具、傳感器、體感、人工智能、處理器、算法、數據結構和顯示來發明這個系統。


了解流水線


NVIDIA Research對正在開展的工作非常開放,並通過科學出版物和開源代碼共享成果。本文的第2部分將介紹我們最近的一些發明的技術概述。但首先,為了說明這一切的背景情況,讓我們來看看現在的電影、遊戲和 VR系統是如何運作的。


電影圖形系統


好萊塢大片動作片包括真實物體和計算機生成圖像(CGI),兩者結合創造驚人的視覺效果。現在的CGI技術已經非常成熟,好萊塢可以製作完全由計算機生成的場景。在《死侍》(2016)中,場景中的每個物體都是由電腦渲染而不是拍攝的。不僅是爆炸和子彈,還有建築、車輛和人員。



從技術的角度來看,製作高視覺保真圖像的電影系統可以用下圖來描述:



該圖分成幾個部分,從左邊的創作階段,通過顆粒、三角形和細分曲面的建模基元,到渲染器。渲染器使用“路徑追踪”的算法,逼真地模擬虛擬場景中的光線。


渲染之後還要手動對二維圖像進行後期處理,進行上色和合成。整個過程是循環的。導演、編輯和藝術家循序漸進地修改基於視覺反饋的內容,然後再向觀眾展示。電影圖像質量是VR現實主義的目標。


遊戲系統


電影圖形系統演變成3D遊戲系統。即使是非娛樂應用,遊戲也代表著VR交互速度和靈活性的目標。遊戲圖形系統如下圖所示:



像電影系統一樣,它從創作過程開始,也是一個循環。遊戲為玩家添加了一個至關重要的交互循環。當玩家看到屏幕上的東西時,他們會按下按鈕。該輸入傳送到圖形處理流水線中的下一幀。這個過程引入了“等待時間”,這是考慮到新的用戶輸入更新幀所花費的時間。對於一個要求動作敏捷的傳統遊戲中,延遲需要低於150ms。這是一個挑戰。


然而,有很多因素會增加延遲。例如,遊戲使用“光柵化”渲染算法代替路徑追踪。延遲陰影柵格化流水線有很多個階段,每個階段都會增加一些延遲。遊戲也有一個大的2D後處理組件,在流水線中被標記為“PostFX”。這條長管道增加了吞吐量,並且可以實現平滑的幀率和高分辨率,但複雜性的增加也會增加延遲。


如果只看輸出,像素的處理速度很快,這就是PC遊戲具有高幀速率的原因。然而值得注意的是,像素花費很長時間,因為它有很多階段。圖中的紅色垂直線表示障礙同步點。它們放大了階段的延遲,因為在屏障處,前一階段的最後一個像素完成才能處理下一階段的第一個像素。


遊戲流水線可以提供驚人的視覺體驗。通過精細的藝術指導,可以實現電影CGI甚至真人電影的畫質。例如游戲《星球大戰:前線II(2017)》。



儘管如此,《星球大戰》遊戲的最佳畫面將比電影更加穩定。這是因為遊戲視覺效果必鬚根據性能進行調整。這意味著光線和圖形不能像大屏幕上看到電影畫面那樣壯觀。


現代虛擬現實係統


現在我們來看看電影和遊戲與現代VR有何不同。當開發者將他們的遊戲引擎遷移到VR時,他們遇到的第一個挑戰就是規格的增加。原始圖形功耗從遊戲中的每秒6000萬像素(MPix / s)到VR的450萬像素/秒。而這只是開始,這個數字預計明年翻兩番。



如今Oculus Rift或HTC Vive上的450 Mpix /秒,相比於30 FPS的1080p遊戲,每秒像素數目幾乎增加了7倍。這是因為改變了像素在圖形系統中的移動速度,造成吞吐量增加。但性能挑戰更大。對於VR來說,我們不僅需要吞吐量的七倍增長,同時還要減少七倍的延遲時間。今天的VR開發人員如何做到這一點?我們先看看延遲是怎麼樣的。


在下圖中,延遲時間是數據從系統左側移動到右側所花費的時間。系統中更多的階段提供了更好的吞吐量,因為它們可以並行工作,但是它們也會延長流水線,所以延遲會變得更糟。為了減少延遲,需要消除方框和紅線區域。



為了減少延遲,開發人員盡可能移除它們,如上面的修改圖所示。這意味著切換回到“前進”渲染流水線,在場景中一切都通過3D場景完成,而不是多個2D陰影和PostFX傳遞。這降低了吞吐量,然後通過顯著降低圖像質量來保存吞吐量。不幸的是,它仍然沒有減少足夠的延遲。


彌補VR技術中延遲差距的關鍵技術被稱為“時間扭曲”(Time Warp)。在“時間扭曲”下,屏幕上顯示的圖像可以在不完全處理的情況下通過圖形流水線進行更新。頭部跟踪數據被傳送到渲染完成後的GPU階段。由於這個階段比較接近顯示器,所以它可以扭曲已經渲染的圖像以匹配最新的頭部追踪數據,而不需要穿過整個渲染管線。使用一些預測技術,在最好的情況下,可以將感知延遲從大約50ms降到零。


現代VR硬件的另一個關鍵是“鏡頭扭曲”。一部好的相機,光學元件至少包含五塊高品質的玻璃鏡片。但它們沉重、體積大、又昂貴。想像一下,你的頭上綁著兩部單反的重量。



這就是為什麼許多頭顯只使用兩塊便宜的塑料鏡片。這些鏡頭小巧輕便,但質量不高。為了校正來自簡單透鏡的畸變和色差,著色器以相反的量預扭曲圖像。


NVIDIA GPU硬件和VRWorks軟件加速了現代VR流水線。GeForce GTX 1080和其他Pascal架構GPU使用新功能Simultaneous Multiprojection,提高吞吐量和縮短延遲,渲染多個視圖。此功能提供單通道立體聲,使雙眼同時呈現透鏡匹配的陰影,直接渲染到預失真圖像,並提供更好的性能。GTX 1080中的GDDR5X內存提供了前一代的1.7倍帶寬,而硬件音頻和物理技術則有助於創建更精確的虛擬世界,增加沉浸感。



現代虛擬現實係統包括流水線階段縮短、“時間扭曲”、“鏡頭扭曲”和強大的PC GPU。


本文下一部分將探索人類視覺感知的限制以及我們正在探索的方法。


英文來源:

https://www.roadtovr.com/exclusive-nvidia-research-reinventing-display-pipeline-future-vr-part-2/

文章來源:heix