光線追蹤技術改寫「遊戲」規則

作者 : Kristof Beets,Imagination資深產品管理總監

歸功於光柵化速度和光線追蹤視覺精確度的混合途徑,以往無法在遊戲中進行即時光線追蹤的情況即將改變。想想如果能在手機上執行具有光線追蹤功能的遊戲將會有多棒?不久的將來即將成為現實...

對於任何從事AR/VR/XR、產品設計或模擬的工程師而言,光線追蹤(ray tracing)是他們應該熟悉的一種技術。因為它是自三維(3D)繪圖誕生以來在繪圖技術領域最重要的進步之一,而且即將以更有效的處理光線追蹤方法進入市場,從電影和廣告等高階領域,轉向行動、穿戴式和汽車等嵌入式領域。

只要看看任何的3D場景,就會發現其逼真度很大程度上取決於光照。在傳統的圖形渲染(光柵化)中,光照圖和陰影圖是預先計算好的,然後應用到場景中以模擬場景外觀。然而,雖然可以實現很美觀的效果,但其始終受限於一個事實,即這些技術僅僅是在模擬光照。光線追蹤技術則是模擬光照在真實世界中如何表現,以創建更精確、更程序性的反射、透明、發光影像。

在現實生活中,光源發出的虛擬光束會照射到物體上。然後光線會與該物體相互作用,並根據物體的表面性質再反射到另一個表面上。之後,光線會不停地進行反射,從而產生光和影。

電腦中的光線追蹤,或者更準確地說是「路徑追蹤」(path tracing),其過程與真實世界中的光線照射路徑是相反的。光線實際上從攝影機的視角發射出來,照射到場景中的物體上,然後演算法會根據光線所照射到的表面性質來計算光線如何與該表面相互作用。之後再繼續追蹤每條光線照射到每個物體上的路徑,直至返回光源。其結果是照亮一個場景,就像被真實世界中的太陽照亮一樣:具有逼真的反射和陰影效果。

Image ray tracing comparison

傳統上,由於運算負載太高,無法在嵌入式裝置(或甚至高階工作站)上即時地執行此操作。(來源:Imagination)

雖然光線追蹤技術應用於遊戲中還算是非常新鮮,但許多人已經因為3D動畫電影而熟悉這一技術了。在《玩具總動員4》(Toy Story 4)的開場鏡頭中,雨後積水所反射的光線就是其中一例。然而,這些場景需要在專用伺服器叢集上花費數月時間去渲染,這對於遊戲來說並不適用;在遊戲中場景必須以至少每秒30格的速度即時產生,最好是2倍速度或甚至更快。

以往難以在遊戲中進行即時光線追蹤,因為涉及巨大的運算量,而今這種情況已經有所改變,這要歸功於結合光柵化速度和光線追蹤視覺精確度的混合式方法。如果能在手機上執行具有光線追蹤功能的遊戲將會有多棒?這將在不久的將來成為現實。

目前的問題是:儘管用於行動裝置的即時光線追蹤解決方案已經存在一段時間了,但仍沒有一個可支援此技術的生態系統——不過這種情況也在改變。2018年,輝達(NVIDIA)針對桌上型電腦市場,尤其是遊戲玩家,發佈了具有混合即時光線追蹤功能的硬體。但是就連NVIDIA在發佈該硬體時也未推出任何遊戲,這突顯出為一種新技術打造生態有多麼困難。然而,現在諸如Bethesda和Unity等眾多遊戲開發商已經有所行動,同時,2020年的新一代遊戲機也將包括一些光線追蹤功能。不久之後,光線追蹤亦會開始出現在其他市場中——例如AR/VR市場。

Imagination_VR

光線追蹤有助於提升VR場景的真實感(來源:Imagination)

結果是,隨著光線追蹤重新成為話題以及消費者開始在自己的電腦上體驗,大家會逐漸想要擁有這項技術,並且期待它出現在自己的行動裝置、VR頭戴式裝置和遊戲機上。因此,為了盡快迎頭趕上,工程師需要開始熟悉這一改變產業的技術及其最新進展。

發表評論