如何在 HDRP 中實現光線追蹤?

2021-02-23 Unity官方平臺

在光照中,「光線追蹤」是指從攝影機或表面向其他表面或光照模型(尤其是攝像機視圖外)射出光束來形成光照。該技術龐大的計算量使其僅在電影製片和高端可視化領域有廣泛的應用,但是在實時內容創作上一直被幀數限制。數年來遊戲使用了另一種方法替代光線追蹤,即光柵化。簡單來說,光柵化就是渲染屏幕像素受特定光照的影響,實際本身並不涉及光線追蹤的概念,且由於其屏幕空間的本質而有一定的局限。

幸而,隨著主流GPU的更新迭代,由硬體支撐的光線追蹤逐漸普及,光追可能很快就會成為生成光照的新標準(尤其是在高端平臺上)。而高清渲染管線(HDRP)則推出了一種糅合傳統光柵化與光線追蹤技術的混合光線追蹤管線,並用光線追蹤重現了諸如環境光遮蔽(AO)、光反射、全局光照(GI)、次表面散射和陰影等常見光效。


以上圖和視頻為寶馬2019款8系雙門轎跑車展示,這是Unity、NVIDIA和寶馬三方的合作成果。視頻中,實景拍攝和光線追蹤渲染的無縫融合產生了不可思議的效果,證明了實時光線跟蹤技術在耗時、成本遠低於離線渲染的前提下,也能製作出極度逼真的圖像。Unity 2020.2 推出了全新的 HDRP 模板,我們之前也介紹過該模板,感興趣的朋友點擊這裡回顧。建議大家下載 Unity 2020.2,在 Unity Hub 中創建新項目,選擇 HDRP 模板,然後點擊Create。

全新的 HDRP 模板藉助了光柵化技術來渲染光照,使用了光照烘焙、光照探針組、反射探針、陰影貼圖等功能。本文將介紹 HDRP 中 4 種主要的光線追蹤效果,即光線追蹤環境光遮擋(Ambient Occlusion)、光反射(Reflection)、全局光照(Global Illumination)和陰影(Shadow)。最後,介紹 HDRP 的路徑追蹤(Path Tracing)功能,路徑追蹤是更為簡單粗暴的光追計算方法,通過延長渲染時間,來換取更高的圖像保真度。 

十多年來,屏幕空間環境光遮蔽(SSAO)一直是遊戲實時渲染的主要內容,用於模擬環境的漫射光遮蔽,改善場景中物體接觸區域的視覺效果,降低凹面區域的光照強度。但是效果如果強度過高,則會在幾何體周圍產生光暈,甚至產生卡通化外觀。除此之外,它還繼承了屏幕空間技術的主要缺點,即無法根據屏幕外對象生成遮蔽效果,僅能使用 z-buffer(z軸緩存)中出現的深度信息。但在優點上, SSAO 在處理攝像機內的小區域光遮擋時依然出色,並且成本相對較低。


圖例:三種情況下的環境光遮蔽對比

在光線追蹤的幫助下,位於攝像機視錐外的光線也能被拍攝進畫面,讓光線照射到畫面外的物體,從而讓攝像機內的大型物體生成出色的宏觀遮擋效果。儘管從技術上講,AO只能勉強算作一種環境光照技術,但它能很好地補充光照貼圖、光探針等其它光照,後者較低解析度及效果強度並不足以生成微型光遮蔽。



與 SSAO 類似,屏幕空間光反射(SSR)也只能反射畫面中的物體,出於攝像機鏡頭外的表面並不能反射光。比方說,攝像機視角對著地面時,SSR技術將不能生成任何光照信息。因此,SSR 的效果多少會有偏差,且會受到多種因素幹擾,甚至受你自己幹擾:在大部分靜態場景中,位置恰當的反射探針才能產生悅目的效果、減少幹擾因素。不過 SSR 真正有用的地方在於視線平行方向上的鏡面反射(如地板、牆壁和天花板)。SSR 最為理想的使用方法是用在視角固定的攝像機中,比如賽車遊戲。

但有了光線追蹤後,我們就能獲取屏幕外的光照信息,並藉此在整個世界上,或在鏡頭周圍一定半徑內生成更精確的光反射,根據 Light Cluster(光照集群)和光線照射距離來生成光照效果。

光線跟蹤最具代表性的功能之一是實時全局光照,即用射出的光線生成間接光照,再簡單點說,就是讓光照在環境中彈射。


通常在遊戲引擎中,間接光照是使用提前計算或烘焙技術來處理的,包括光照探針、光照貼圖,但技術的缺陷在於運算耗時會增加場景光照的迭代時間。



HDRP 推出了兩種 RTGI 技術:高性能和高質量。前者適用於在直射光下實現高幀率,而後者則能處理光線的多次反射和採樣,可在複雜室內環境中生成精確的光效,當然運算成本也非常高。



HDRP 自帶精美的陰影效果,在陰影過濾質量為高時(PCSS),管線生成的貼圖可模擬自然的陰影柔順感,保證陰影在投影物體周圍的銳度,模仿真實陰影。然而當過濾質量為中等時,結果就不盡人意了,整張陰影貼圖均會被無差別過濾,投影物體和接收物體間的距離將不能影響效果。



光線追蹤陰影可以顯著改善陰影效果。通過從表面向光照投射射線,來計算出兩者間的遮擋面積,由此生成的陰影非常逼近現實,而性能成本並不算高。此外,HDRP還支持透明表面的陰影!


光線路徑追蹤功能較傳統離線渲染可更快地生成精美圖像。光線從攝像機射出,在碰撞到表面時,再向其他表面和光照投射光線(形成光照集群『Light Cluster』結構)。光線從攝像機到燈光間的行程稱為路徑,功能由此得名路徑追蹤。



與其他光線追蹤方法相比,路徑追蹤的優勢在於能用統一的運算流程來生成所有光照,包括陰影、反射、折射和全局光照。該技術的主要缺點在於渲染時間和圖像噪波,後者可以通過累積採樣多幀圖像來推算出更為清晰的圖像(類似時域化抗鋸齒)。


在此提醒一下各位朋友,目前 HDRP 中的光線追蹤處於預覽階段,並不能滿足商業製作要求,各位在創作的時候請務必做好備份。同時,也歡迎各位提出寶貴的建議。

長按關注

第一時間了解Unity引擎動向,學習最新開發技巧

相關焦點

  • 光線追蹤往事:十年技術輪迴
    為了進一步在遊戲中推行光線追蹤,英特爾在2007年招入了德國人Daniel Pohl。Daniel Pohl 是埃爾朗根-紐倫堡大學的研究畢業生,在校期間他就一直在進行光線追蹤的研究。2004年,他將實時光線追蹤應用於《雷神之錘3》上。
  • 外國小哥用Excel實現光線追蹤效果,甚至還有3D引擎
    編輯:Q【新智元導讀】近期,有國外大神用Excel完成了英偉達顯卡才能實現的光線追蹤技術的演示,實現了不錯的光影效果,而且全程只使用了公式和宏功能
  • 一文帶你了解現代光線追蹤技術的研究歷程
    自此,我們的問題也就演變為如何在不受環境映射限制的前提下應用此技術。因為光線追蹤的原理非常簡單,本應成為在計算機圖形學中實現全局光照效果的不二選擇。來自IBM的Arthur Appel率先提出了用於生成圖像的光線投射概念(ray casting),而來自MAGI的Robert Goldstein及其同事則實現了這項技術的商業化應用。
  • 次世代大作標配 光線追蹤DLSS深度剖析
    隨著RTX 30系顯卡的發布,人們在關心性能的同時,一些軟性技術的應用和更新更受到玩家的青睞,如遊戲中的光追表現和DLSS效果。這兩種技術可以說有著劃時代意義,光線追蹤可以讓我們在遊戲中獲得更為真實的光線效果,讓遊戲畫面不斷趨近於真實,同時還可以節省大量遊戲開發者的時間,而DLSS效果則可以在不降低畫質的情況下讓幀數暴漲。
  • 《鬼泣5:特別版》不會在XSS上提供光線追蹤
    根據CAPCOM官方消息,《鬼泣5:特別版》將不會在Xbox Series S上提供光線追蹤。此前官方表示《鬼泣5:特別版》將可以通過可下載更新在Xbox Series X及Xbox Series S上支持光線追蹤。
  • 光線追蹤版《我的世界》,意義不只是更炫的畫面
    而光線追蹤版《我的世界》,省略了中間所有的步驟,就實現了比現在最頂尖、最現代的遊戲還要更好的光影效果。但是這麼做由於缺少了計算光線的步驟,場景間各個物體裡面缺少一些很基本的光影效果,複雜的漫反射間接光源就不說了,甚至連最簡單的鏡面反射都很難實現。比如說,在現實中,你看向一棟大樓的玻璃,會映出城市的倒影。但是在光柵化渲染的遊戲裡面,這樣的倒影是不會出現的。因為電腦實在是太蠢了,沒法自己理解,一個物體為什麼能反射出另一物體的倒影。
  • Minecraft官方光影咕了,但Win10版的光線追蹤要來了!
    就在幾天前,Mojang宣布了官方光影「史詩圖形包」的開發被取消,並表示「尋找其他的改善 Minecraft 圖像的方式」,而昨天,Mojang就宣布了這個全新的方式,就是與顯卡大廠英偉達合作,為Win10版的玩家帶來光線追蹤這一黑科技
  • SUBSTANCE | NVIDIA PROJECT SOL 實時光線追蹤
    我們與NVIDIA(https://www.nvidia.com/en-us/)從事Project Sol項目才華橫溢的美術師們交流,他們向我們展示這次演示的內容以及在製作過程中如何使用Substance, 其中有一個完整的視頻向我們分步展示如何使用Substance Painter為資源創建材質。
  • NVIDIA最新新聞 強調支持暗影國度光線追蹤
    NVIDIA最新的新聞更新強調了對暗影國度光線追蹤的支持。我們知道這一點已經有一段時間了,因為該選項已經存在於暗影國度設置中但幾個月來一直沒有啟用。在寫這篇文章的時候這些選項仍然無法測試,希望隨著官方的更新我們很快就能看到它!雖然WoW一直能夠在包括低端老爺機的各種PC上運行,但對於想要在電腦上獲得更好性能和圖形的玩家來說,光線追蹤選項的加入應該是一個受歡迎的消息。
  • Unity中實現2D光照系統
    , 而通常遊戲引擎所提供的實時光照系統僅限於 3D 場景,要實現圖中效果的 2D 光影需要額外設計適用於 2D 場景的光照系統。(通常為了簡化這一過程,我們可以假定這些光線全部射向攝像機)而在 2D 平面場景中,我們可以認為,該平面上任意一點所受的光照,等於來自所有方向的光線輻射度的總和,其中的一部分射向攝像機,為了簡化,我們認為這些光線全部進入攝像機。
  • AMD光線追蹤僅限高端RDNA 2顯卡獨享
    AMD此前表示RDNA2 GPU有望實現與RDNA 1相同的能效比,即每瓦性能再次提高了50%,除此之外我們還知道AMD的RDNA 2架構顯卡還將支持光線追蹤功能,並且此次光線追蹤技術還是同微軟一起研發並且支持DX12 Ultimate標準的。
  • 微星魔龍RTX2070光線追蹤對比體驗
    老黃有RTX ON    一篇遲到的光線追蹤體驗文,去年PC顯卡和遊戲最大看點,來自老黃新的Turing™ GPU架構,以及引入的光線追蹤技術RayTracing,甚至最經典的GTX顯卡前綴都改成了光蹤的RTX系列,可見重視程度。    光線追蹤是一種「來自幾何光學的通用技術,它通過追蹤與光學表面發生交互作用的光線,得到光線經過路徑的模型」。
  • 《GTA4》最新4K MOD公布:光線追蹤加持、視效拔群
    日前,Digital Dreams發布了《GTA4》最新4K高清MOD,通過藉助Pascal Gilcher開發的全局照明著色器工具,甚至還實現了光線追蹤效果。當然,這個三方著色器對於光線的模擬效果斷然沒有NV大價錢開發的RTX厲害,但衝其支持任意顯卡和遊戲這點,也要給個好評。
  • 《逆水寒》光線追蹤遊戲畫面體驗報告
    至於在這款遊戲中開啟光線追蹤前後的遊戲畫面到底會呈現怎樣的變化,我們不妨在遊戲中一探究竟。需要注意的是,在《逆水寒》中並非所有場景均支持光線追蹤,目前僅有甜水巷和長慶樓這兩個場景供玩家們體驗。下面我們就分別走進長慶樓和甜水巷,看看得到光線追蹤加持後,《逆水寒》的遊戲畫面究竟會有怎樣的變化。
  • RTX實時光線追蹤版《我的世界》體驗:開啟關閉完全兩個世界
    RTX實時光線追蹤版《我的世界》體驗:開啟關閉完全兩個世界 期待許久後,支持光線追蹤的Windows
  • 光線追蹤未來的普及,N/A兩家誰能先徵服玩家
    遊戲玩家們,今年下半年聽到最多的詞,就是光追,也就是光線追蹤技術。這項技術在顯卡領域,目前領先的N卡在新的20系當中,率先讓三款高端卡2080ti、2080、2070加持了光追。首發價格相比10系一下翻倍,讓很多玩家苦不堪言,心疼自己的腰包。
  • HTC One X如何追蹤股票資訊
    HTC One X追蹤股票資訊的方法如下:  可以使用股票獲取最新的股票更新,了解正在追蹤的股票報價和股市指數。  註:自動下載股票信息可能會導致額外的數據費用。  1.在主屏幕中,點擊 可更新股票信息。  (3)點擊
  • 《我的世界》Win10版光線追蹤免費更新,黑科技的麥塊來了
    Mojang 已公開Windows 10《Minecraft》(我的世界)1.16.200 版免費更新,只要使用於在具有DirectX 功能的裝置上(GeForce RTX GPU 與特定AMD GPU),即可體驗附帶即時光線追蹤的《Minecraft》。
  • 腦電波如何實現追蹤虛擬實境控制
    打開APP 腦電波如何實現追蹤虛擬實境控制 科技最前線 發表於 2020-01-07 10:48:00 (文章來源:科技最前線)
  • Google 推出 HDR+ 連拍攝影數據集
    根據條件的不同,系統會對齊 2 至 10 個圖像並將它們合併成一個中間原始圖像(中)。這個合併圖像具有更低的噪點和更高的動態範圍,從而生成更高質量的最終結果(右)。使用連拍攝影生成更好的圖像連拍攝影具有與採集更多光線相關聯的優勢,包括更低的噪點和更高的動態範圍,但是它可以避免曝光時間增加導致的運動模糊。這對小型智慧型手機攝像頭尤為重要,攝像頭的大小會限制它們捕獲的光量。