對大家來說,光線追蹤是一項既熟悉又陌生的技術(shù)。說熟悉,是因為可能大家其實都見過;說陌生,是因為除了計算機圖形領(lǐng)域的專家,真正了解該技術(shù)的人可能為數(shù)不多。
現(xiàn)代電影有賴于光線追蹤技術(shù)來生成或強化特效,包括逼真的反射、折射和陰影效果。正是由于運用了這些效果,才使得史詩級科幻片中的星際戰(zhàn)斗機如此栩栩如生。光線追蹤能夠助力打造令人血脈噴張的飆車場景,也能使戰(zhàn)爭片的火焰、煙霧和爆炸場景更加真實。
光線追蹤生成的影像與攝影機拍攝的影像很難區(qū)分開來。真人動作電影將計算機生成的效果與真實拍攝的影像無縫融合,而動畫電影則能夠通過光線和陰影隱藏用數(shù)字方式生成的場景,以達到如攝影機拍攝般的逼真效果。
什么是光線追蹤?
想了解光線追蹤,你可以環(huán)顧四周,找到被光線照亮的物體,沿著到達視點的光線反方向進行追蹤,就是光線追蹤。
如果你最近去過電影院,就能實際見到光線追蹤。
但在過去,計算機硬件的速度不夠快,無法做到實時。比如在視頻游戲中,電影制作人渲染單個幀的時間可能很長,因此他們會在渲染農(nóng)場中離線渲染。而視頻游戲畫面轉(zhuǎn)瞬即逝。因此,人們依賴于另一種技術(shù)來處理大部分實時圖形,即光柵化。
什么是光柵化?
長期以來,實時計算機圖形一直使用一種稱為“光柵化”的技術(shù)在二維屏幕上顯示三維物體。該技術(shù)速度快,且效果足夠好,盡管它仍然無法達到光線追蹤所能達到的水平。
借助光柵化技術(shù),可通過虛擬三角形或多邊形網(wǎng)格來創(chuàng)建物體 3D 模型。在這種虛擬網(wǎng)格中,每個三角形的頂點與大小及形狀不同的其他三角形的頂點相交。每個頂點關(guān)聯(lián)著大量信息,包括其在空間中的位置以及有關(guān)顏色、紋理及其“法線”(normal)信息,這些信息可用于確定物體表面的朝向。
計算機隨后將 3D 模型中的三角形轉(zhuǎn)換為 2D 屏幕上的像素或點。根據(jù)存儲在三角形頂點中的數(shù)據(jù),能為每個像素分配一個初始顏色值。
進一步的像素處理或“陰影處理”包括根據(jù)場景中光照與像素的碰撞來改變像素顏色,以及將一個或多個紋理應(yīng)用于像素,進而生成應(yīng)用于像素的最終顏色。
光柵化技術(shù)的計算量異常大。一個場景中的所有物體模型可使用多達數(shù)百萬個多邊形,4K 顯示器中有近 800 萬個像素。而且,屏幕上顯示的每個幀或圖像通常會在顯示器上每秒刷新 30 到 90 次。
此外,還要使用內(nèi)存緩沖區(qū)(為加快運行速度預(yù)留出來的一點臨時空間)在屏幕上顯示之前,預(yù)先渲染這些幀。還需使用景深或“z 緩存” 存儲像素深度信息,以確保在屏幕上特定的像素位置會顯示最上層的物體,并隱藏其背后的物體。
這正是為什么擁有豐富圖形功能的現(xiàn)代計算機游戲會依賴于性能強悍的 GPU。
光線追蹤有何不同?
光線追蹤技術(shù)與光柵化不同。在真實世界中,我們看到的 3D 物體被光源照亮,且光子在到達觀眾眼睛之前,可以從一個物體反射到另一個物體。
光線可能會被某些物體阻擋,形成陰影。或可能會從一個物體反射到另一個物體,比如當(dāng)我們看到一個物體的圖像反射在另一個物體表面時就是這樣。光線穿過透明或半透明物體(如玻璃或水)時會發(fā)生折射。
光線追蹤通過從我們的眼睛(或“觀景式像機”)反向追蹤光線捕捉這些效果, IBM 的 Arthur Appel 于 1969 年在《Some Techniques for Shading Machine Renderings of Solids》中首次提出了這種技術(shù)。此技術(shù)可追蹤通過 2D 視圖表面上每個像素、到達場景 3D 模型中的光線路徑。
十年后,業(yè)界又迎來下一個重大突破。Turner Whitte 在 1979 年發(fā)表論文《An Improved Illumination Model for Shaded Display》,闡述了如何捕捉反射、陰影和折射,他目前就職于 NVIDIA Research。
Turner Whitted 1979 年發(fā)表的論文開啟了光線追蹤的文藝復(fù)興時代,為電影領(lǐng)域帶來了變革。
利用 Whitted 的技術(shù),當(dāng)光線投射到場景中的物體時,根據(jù)物體表面上碰撞點處的顏色和光照信息可以計算出像素的顏色和照明度。如果光線在到達光源之前反射或通過不同物體的表面,則根據(jù)所有物體的顏色和光照信息可以計算出最終的像素顏色。
20 世紀(jì) 80 年代的另外兩篇論文也同樣為計算機圖形革命奠定了知識基礎(chǔ),掀起了計算機圖形的革命,顛覆了電影的制作方式。
1984 年,Lucasfilm 的 Robert Cook、Thomas Porter 和 Loren Carpenter 詳細(xì)介紹了光線追蹤如何結(jié)合眾多常見的電影制作技術(shù)(包括動態(tài)模糊、景深、半影、半透明和模糊反射),而這些效果當(dāng)時還只能依靠攝影機制作。
兩年后,加州理工學(xué)院 Jim Kajiya 教授發(fā)表論文《The Rendering Equation》從物理學(xué)的角度審視了計算機圖形的生成,更好地展現(xiàn)了光線在整個場景中的散射方式。
這項研究與現(xiàn)代 GPU 的結(jié)合取得了顯著的成果,計算機生成圖像捕捉的陰影、反射和折射效果能夠以假亂真,與真實世界的照片或視頻很難區(qū)分開來。正是這種真實感讓光線追蹤開始全面進入了現(xiàn)代電影制作領(lǐng)域。
這款由Enrico Cerica使用OctaneRender創(chuàng)建的計算機生成圖像,顯示了光線、窗戶透射的光、以及燈架上倒映在地板上和反射在相框上形成的圖像。
這種技術(shù)的計算量同樣非常大。正因如此,電影制作人才依賴大量的服務(wù)器或渲染農(nóng)場。而且,渲染復(fù)雜的特殊效果可能需要花上幾天甚至幾周的時間。
可以肯定的是,許多因素都會影響光線追蹤的整體圖形質(zhì)量和性能。實際上,由于光線追蹤是相當(dāng)計算密集型的,因此通常采用光線追蹤來渲染場景中最有助于提升視覺效果和現(xiàn)實感受的部分,而場景的其余部分則使用光柵化進行渲染。光柵化仍能提供出色的圖形質(zhì)量。
光線追蹤未來將如何發(fā)展?
隨著 GPU 性能日益強悍,下一步理應(yīng)是讓更多人享受到光線追蹤技術(shù)帶來的好處。例如,借助光線追蹤工具(如 Autodesk 的 Arnold、Chaos Group 的 V-Ray 或 Pixar 的 Renderman)和性能強悍的 GPU,產(chǎn)品設(shè)計師和建筑師能夠使用光線追蹤,在幾秒內(nèi)即可生成逼真的產(chǎn)品模型,以便他們更加有效地協(xié)作,并免去了成本不菲的原型設(shè)計環(huán)節(jié)。
光線追蹤已經(jīng)向建筑師和照明設(shè)計師證明了它的價值所在,他們正在利用光線追蹤對光線與設(shè)計如何交互進行建模。
隨著GPU的計算能力日益提升,視頻游戲?qū)⒊蔀榇思夹g(shù)的下一個前沿陣地。NVIDIA 在早前宣布推出 NVIDIA RTX。這是一種光線追蹤技術(shù),可為游戲開發(fā)者提供電影級畫質(zhì)的實時渲染。它是 NVIDIA 在計算機圖形和GPU架構(gòu)領(lǐng)域經(jīng)過10年努力所取得的成果。
它包含在 NVIDIA Volta 架構(gòu) GPU 上運行的光線追蹤引擎,支持通過各種接口進行光線追蹤,NVIDIA 與微軟緊密合作,通過微軟新的 DirectX Raytracing (DXR) API 提供全面的 RTX 支持。
為幫助游戲開發(fā)者利用這些新功能,NVIDIA 還宣布 GameWorks SDK 將添加一個光線追蹤降噪模塊。更新版 GameWorks SDK 即將推出,其中包含光線追蹤區(qū)域陰影和光線追蹤光澤反射。
所有這一切都有助于游戲開發(fā)者等將光線追蹤技術(shù)應(yīng)用到其工作中,以創(chuàng)建更真實的反射、陰影和折射。
如此一來,玩家在家中玩游戲時便能享受到電影級畫質(zhì)、更佳的視覺效果及游戲體驗。
-
英偉達
+關(guān)注
關(guān)注
22文章
3770瀏覽量
90984 -
光線追蹤
+關(guān)注
關(guān)注
0文章
183瀏覽量
21473
原文標(biāo)題:解密NVIDIA光線追蹤技術(shù)
文章出處:【微信號:NVIDIA-Enterprise,微信公眾號:NVIDIA英偉達企業(yè)解決方案】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論