什麼是路徑追蹤?你真的瞭解嗎

空里流霜不觉飞 2024-09-24 09:44 2次浏览 0 条评论 taohigo.com

在過去 15 年計算能力爆炸式增長的推動下,路徑追蹤已經席卷瞭視覺媒體。

它為最大的大片帶來瞭巨大的效果,在最身臨其境的情節劇中投射出微妙的光影,並將動畫藝術推向瞭新的水平。

路徑追蹤是實時的,釋放出充滿動態光影、反射和折射的交互式、逼真的 3D 環境。

那麼什麼是路徑追蹤呢?它背後的偉大理念非常簡單,將藝術和科學領域的創新者連接瞭半個千年。

光柵化和光線追蹤有什麼區別?

首先,讓我們定義一些術語,以及它們今天如何用於創建交互式圖形——可以實時響應用戶輸入的圖形,例如在視頻遊戲中。

第一種是光柵化,是一種生成從單個視點看到的圖像的技術。它從一開始就是 GPU 的核心。現代 NVIDIA GPU 每秒可生成超過 1000 億個光柵化像素。這使得光柵化成為實時圖形(如遊戲)的理想選擇。

光線追蹤是一種比光柵化更強大的技術。它可以確定從許多不同點、在許多不同方向上可見的內容,而不是局限於找出從單個點可見的內容。從 NVIDIA Turing 架構開始,NVIDIA GPU 提供瞭專門的 RTX 硬件來加速這種困難的計算。如今,單個 GPU 每秒可以追蹤數十億條光線。

能夠追蹤所有這些光線,可以比光柵化更準確地模擬光在現實世界中的散射方式。但是,我們仍然必須回答這些問題,我們將如何模擬光以及如何將模擬帶到 GPU 中?

什麼是光線追蹤?隻需按照字符串

為瞭更好地回答這個問題,有助於理解我們是如何到達這裡的。

NVIDIA 圖形研究副總裁 David Luebke 喜歡從 16 世紀開始講述阿爾佈雷希特·丟勒(Albrecht Dürer)——北歐文藝復興時期最重要的人物之一——他使用繩索和權重在 2D 表面上復制 3D 圖像。

丟勒畢生致力於將古典和當代數學與藝術相結合,在表現力和現實主義方面取得突破。

符串就是問題:Albrecht Dürer 是第一個描述現在稱為“光線追蹤”的技術,這是一種在 Underweysung der Messung(紐倫堡,1525 年)f15 中創建 2D 表面上的 3D 對象的精確表示的技術

在 1525年的《測量論文》中,丟勒第一個描述瞭光線追蹤的概念。看看丟勒是如何描述這個想法的,是瞭解這個概念的最簡單方法。

想想光如何照亮我們周圍的世界。

現在想象一下,用一根像丟勒那樣的繩子,將這些光線從眼睛向後追蹤到與光相互作用的物體。那就是光線追蹤。

計算機圖形的光線追蹤

1969 年,也就是丟勒去世 400 多年後,IBM 的 Arthur Appel 展示瞭如何將光線追蹤的想法引入計算機圖形學,並將其應用於計算可見性和陰影。

十年後,特納·惠特 (Turner Whitted) 首次展示瞭這一想法如何捕捉反射、陰影和折射,並解釋瞭看似簡單的概念如何使更復雜的計算機圖形成為可能。在接下來的幾年裡進步很快。

1984 年,盧卡斯影業的羅伯特·庫克、托馬斯·波特和洛倫·卡彭特詳細介紹瞭光線追蹤如何結合許多常見的電影制作技術——包括運動模糊、景深、半影、半透明和模糊反射——在此之前,這些技術在計算機圖形學中是無法實現的。

兩年後,加州理工學院教授吉姆·卡吉亞 (Jim Kajiya) 的清晰的七頁論文“渲染方程”通過光線追蹤的方式將計算機圖形學與物理學聯系起來,並引入瞭路徑追蹤算法,這使得準確表示光散射的方式成為可能在整個場景中。

什麼是路徑追蹤?

在開發路徑追蹤時,Kajiya 轉向瞭一個不太可能的靈感:研究輻射傳熱,或熱量如何在整個環境中傳播。來自該領域的想法使他引入瞭渲染方程,該方程描述瞭光如何穿過空氣並從表面散射。

渲染方程簡潔,但不容易求解。計算機圖形場景很復雜,數十億個三角形在今天並不罕見。沒有辦法直接解決渲染方程,這導致瞭 Kajiya 的第二個關鍵創新。

Kajiya 表明統計技術可用於求解渲染方程:即使不直接求解,也可以沿著單個光線的路徑求解。如果沿著足夠多的光線路徑求解以準確地近似場景中的照明,則照片級逼真的圖像是可能的。

以及如何沿著光線路徑求解渲染方程?光線追蹤。

Kajiya 應用的統計技術被稱為蒙特卡洛積分,可以追溯到 1940 年代計算機的早期階段。為路徑追蹤開發改進的蒙特卡洛算法直到今天仍然是一個開放的研究問題。NVIDIA 研究人員處於該領域的最前沿,定期發佈提高路徑追蹤效率的新技術。

通過將這兩個想法放在一起——描述光在場景中移動方式的基於物理的方程——以及使用蒙特卡羅模擬來幫助選擇可管理數量的返回光源的路徑,Kajiya 概述瞭將成為生成逼真的計算機生成圖像的標準。

他的方法將一個由各種不同渲染技術主導的領域轉變為一個領域——因為它反映瞭光在現實世界中移動方式的物理特性——可以將簡單、強大的算法應用於工作,從而可以應用於再現大量具有令人驚嘆的真實感的視覺效果。

電影中的路徑追蹤

在 1987 年推出後的幾年裡,路徑追蹤被視為一種優雅的技術——已知的最準確的方法——但它完全不切實際。Kajiya 原始論文中的圖像隻有 256 x 256 像素,但它們需要 7 多個小時才能在比大多數其他人可用的計算機強大得多的昂貴微型計算機上渲染。

但隨著摩爾定律推動計算能力的提高——該定律描述瞭由允許芯片制造商每 18 個月將微處理器上的晶體管數量增加一倍的進步所推動的計算能力呈指數級增長——這項技術變得越來越實用。

從 1998 年的《蟲蟲危機》等電影開始,越來越多的電影使用光線追蹤來增強計算機生成的圖像。而在 2006 年,第一部完全路徑追蹤的電影《怪物屋》震驚瞭觀眾。它是使用由 Solid Angle SL(自 Autodesk 收購後)和 Sony Pictures Imageworks 共同開發的 Arnold 軟件渲染的。

這部電影大受歡迎——全球票房超過 1.4 億美元。它讓人們看到瞭新一代計算機動畫可以做什麼。隨著更多的計算能力變得可用,更多的電影開始依賴該技術,產生的圖像通常與相機拍攝的圖像無法區分。

問題:渲染單個圖像仍然需要數小時,並且龐大的服務器集合(稱為“渲染農場”)連續運行數月以渲染圖像以制作完整的電影。將其帶入實時圖形將是一個非凡的飛躍。

這在遊戲中是什麼樣的?

多年來,遊戲中路徑追蹤的想法是無法想象的。雖然許多遊戲開發人員會同意,如果路徑跟蹤具有實時圖形所需的性能,他們會希望使用路徑跟蹤,但性能與實時相差太遠,以至於路徑跟蹤似乎無法實現。

然而,隨著 GPU 的速度越來越快,現在隨著 RTX 硬件的廣泛使用,實時路徑跟蹤已經出現。正如電影在轉向路徑追蹤之前開始結合一些光線追蹤技術一樣——遊戲已經開始以有限的方式使用光線追蹤。

現在越來越多的遊戲是部分光線追蹤的。它們將傳統的基於光柵化的渲染技術與一些光線追蹤效果相結合。

那麼在這種情況下,路徑跟蹤意味著什麼?這可能意味著多種技術。遊戲開發者可以光柵化主光線,然後路徑追蹤場景的照明。

光柵化相當於從一個點投射一組光線,該點在它們擊中的第一件事物處停止。光線追蹤更進一步,從許多點向任何方向投射光線。路徑追蹤模擬瞭光的真實物理,它使用光線追蹤作為更大的光模擬系統的一個組件。

這意味著場景中的所有燈光都是隨機采樣的——使用蒙特卡洛或其他技術——既用於直接照明,也用於照亮物體或角色,也用於全局照明,以間接照明照亮房間或環境。

要做到這一點,與其通過一次反彈追蹤光線,不如通過多次反彈追蹤光線,大概回到它們的光源,正如 Kajiya 所概述的那樣。

一些遊戲已經這樣做瞭,結果令人驚嘆。

微軟發佈瞭一個插件,可以在Minecraft中使用路徑追蹤。

Quake II是經典的射擊遊戲——通常是高級圖形技術的沙盒——也可以通過一個新插件實現完全路徑追蹤。

顯然還有更多工作要做。遊戲開發者需要知道客戶擁有體驗路徑追蹤遊戲所需的計算能力。

遊戲是最具挑戰性的視覺計算項目:需要高視覺質量和與快速抽搐遊戲玩傢互動的速度。

期待這裡開創的技術能夠滲透到我們數字生活的方方面面。

下一步是什麼?

隨著 GPU 繼續變得越來越強大,下一個合乎邏輯的步驟是讓路徑跟蹤發揮作用。

例如,借助Autodesk 的 Arnold 、 Chaos Group的V-Ray或Pixar 的 Renderman等工具以及強大的 GPU,產品設計師和架構師可以使用光線追蹤在幾秒鐘內生成逼真的產品模型,讓他們更好地協作並跳過昂貴的成本原型設計。

隨著 GPU 提供越來越強大的計算能力,視頻遊戲成為光線追蹤和路徑追蹤的下一個前沿領域。

2018 年,NVIDIA 發佈瞭NVIDIA RTX,這是一種光線追蹤技術,可為遊戲開發者帶來實時的電影質量渲染。

NVIDIA RTX 包括在 NVIDIA Ampere 和 Turing 架構 GPU 上運行的光線追蹤引擎,支持通過各種接口進行光線追蹤。

NVIDIA 已與 Microsoft 合作,通過 Microsoft 的新 DirectX Raytracing (DXR) API 實現全面的 RTX 支持。

此後,隨著越來越多的開發者開發出支持實時光線追蹤的遊戲,NVIDIA 不斷開發 NVIDIA RTX 技術。

Minecraft甚至包括對實時路徑追蹤的支持,將塊狀的沉浸式世界變成充滿光影的沉浸式景觀。

由於越來越強大的硬件,以及軟件工具和相關技術的擴散,更多的即將到來。

因此,數字體驗——遊戲、虛擬世界甚至在線協作工具——將具有好萊塢大片的電影品質。

所以不要太舒服。你在客廳沙發上看到的隻是我們周圍世界即將發生的事情的一個演示。

  • 瞭解有關NVIDIA RTX 路徑跟蹤 SDK的更多信息。
  • 點播 觀看“實時路徑追蹤的研究進展”會議。
  • 要深入瞭解光線追蹤,請深入瞭解光線追蹤寶石和光線追蹤寶石 II。
  • 查看 Matt Pharr、Wenzel Jakob 和 Greg Humphreys 撰寫的“基於物理的渲染:從理論到實施”。它提供瞭數學理論和實用技術,可將現代照片級真實渲染應用於工作。
  • 訪問NVIDIA 資源以進行遊戲開發。

重要提示:

遊戲制作、電影合成、特想合成、實時渲染電腦配置要求比較高,本地合成電腦資源不夠,無需額外增加硬件投入成本,可以使用雲端解決方案,使用專業的贊奇超高清雲工作站能輕松的解決配置問題,根據需求選擇合適的配置,即開即用,按需付費,節省硬件成本。

普通的電腦也能變成超級電腦,完成合成,使用雲桌面,即開即用,不必購買昂貴的硬件設備,降低硬件成本,配備海量機型、軟件,按需部署,一鍵安裝,體驗流暢與快捷,雲端內置軟件中心方便管理,普通能聯網的電腦也能根據自己的需求享受行業最高端的CPU和GPU,極大提高制作效率和使用體驗,全面支持3D應用軟件插件運行,隨時調用百餘款軟件插件,高效作業。