※ 引述《kobe30418 (吾有上將潘鳳)》之銘言:
: 抱歉原諒我的無知
: 玩遊戲跟看影片後
: 我還是不懂光追到底為什麼是目前的潮流
: 我真心感受不到光追的技術對我玩遊戲的體驗有增加多少
: 移動時我比較在意幀數跟花草樹木的物理動態
: 劇情過場時只要畫質好就好了
: 主要的注重的我看了半天,到底光追有什麼革命性的效果啊?
: 怎麼都在強調光追?
光線追蹤的革命性效果是:
開發者用更少的努力在假造上就能達成玩家看起來會覺得高品質的結果。
不過消費者跟開發者的荷包會一起折損(?
可以簡單用 SSD 傳輸速度能帶來的幫助理解。
玩家不喜歡載入,遊戲設計就開始為了降低硬性的載入,擺了一堆藏住載入的狹縫。為了
提升玩家體驗而假造了無載入的體驗,但遲早累積起來反而會變成干擾體驗,如果曾經玩
過 FF7R 的話應該就知道 XD
https://youtu.be/I4o7eSKLN40?t=37771
簡單類比就到此為止,以下試著寫一篇長一點的文章解釋,可以拿杯飲料來邊喝邊看。
如果玩過的遊戲中覺得光線追蹤沒什麼幫助的話,代表這些遊戲本來就假造得夠好。
而雖然所有光線追蹤帶來的體驗都能用其他方式假造,但通常:
-很難假造到完美
-效能也稱不上真的很好
-很容易引來特定情況下看起來很糟的結果
-要花專業人力的時間來假造
光線追蹤存在的話,帶來的幫助就是直接有完美的結果,不需要想著怎樣假造,只需要想著
怎樣讓最後的結果好看,當然因為效能需求很高而現在只能用低解析度跑是個問題,但解
析度的問題遲早會被強化的硬體解決。
再者就是用 DLSS、XeSS 跟 FSR2 幫忙假造......用假造來解決假造的問題?矛盾就是這
麼樸實無華(X
光線追蹤允許了以下幾件事不需要假造:
-全域照明(任何光源都有多次彈跳的照明)
-Emissive Lighting(不知道怎翻,能讓某些理論上該有光的地方真的照亮周圍)
-反射(鏡子真的會反射)
-影子(完美表現的影子)
以下我們就來看每個要素要怎麼假造跟會有什麼問題。
全域照明(Global Illumination)
物理世界的任何東西都可以無限地反射光,但常態的光線模擬不能做到這結果。
常見的假造方式有兩種:手動微調假造跟光照貼圖。
手動微調假造
如果只有最單純的光線模擬的話會長這樣:
https://imgur.com/0EsZpcT
天花板暗處超暗,沒有接收到來自地面的反射光。
這時候可能就會派個人力去假造,例如說複製額外一份光源變成這樣:
https://imgur.com/OSti3Ts
讓場景看起來像是有反射光。
這樣的做法考驗的是設計師的人腦光線追蹤品質(?),以及要花在微調上的時間。
光照貼圖
簡單來說就是我們先做一次光線追蹤,然後貼在場景上,完工!
這樣的確會有完美的反射光,但相對地整個場景都不能變動。PS4 世代的遊戲缺乏物理互
動的理由多半跟這件事情有關,優先選擇了畫面的好看而犧牲掉可互動性。
當然上述兩個問題都有對應的更多的假造方式來改善體驗,但相較之下有了光線追蹤,就
允許開發者只要打開引擎的一個勾勾就搞定一切問題。
https://imgur.com/0EsZpcT (原版)
https://imgur.com/OSti3Ts (人腦假造)
https://imgur.com/juhIPOw (光線追蹤)
一鍵完成,而且品質比設計師的人腦光線追蹤還要好。
好啦不是真的一鍵啦,要先有人把這功能寫好 XD
Emissive Lighting
遊戲中的小發光物件,例如說路邊的霓虹招牌,通常材質設定上可以設定一個值來模擬發
出一個特定的光線的視覺。但是沒有照亮周邊的場景的話會很奇怪,所以通常得人工額外
塞一個光源進去。
然而常態光線模擬其實只擅長處理單點發出來的光源,所以設計師假造的時候也只能用有
限的單點光源去處理,例如說這樣:
https://imgur.com/6RPJke7
相對的,光線追蹤可以正確模擬從每一個點發出來的光線:
https://imgur.com/rQF4jzG
反射
反射的假造相當多元,其中最簡單的方式就是從鏡子的對面再繪製場景一次,不過這樣做
當然很吃效能所以不常見,也因為這樣大多數遊戲都會故意讓出現的鏡子物品是破裂的狀
態或是看起來很髒 XD
以下再介紹一些例子:
單純複製一份場景在另一邊
如果要在地面顯示場景的反射的話,就直接把場景複製一份到地下就好啦!
https://imgur.com/BUqP6Du
https://imgur.com/hKj3Vx8
複製畫面內的資訊
水平的時候效果很好,但螢幕內看不見反射物件的時候,就會很莫名其妙的反射消失。
https://imgur.com/DgpHUnu
https://imgur.com/A9Yzk3Y
大概對視覺影響最大的情況就是像這樣,一扇金屬的門:
https://imgur.com/m1IEsqx
沒有光線追蹤的情況下因為只能塞一個泛用的低解析度反射而會看起來像是發光。有了光
線追蹤之後就可以看起來很正常:
https://imgur.com/NVE3zCC
影子
由於遊戲引擎渲染影子的限制,最常態的陰影只能被渲染成「完美的硬陰影」,同時陰影
的解析度會受到限制。對於陰影的解析度解法當然可以單純調高解析度,但同時還有著沒
辦法處理局部遮蔽的問題。
局部遮蔽的處理目前通常是用所謂的 SSAO,就是根據場景深度假造光線的遮蔽:
https://imgur.com/ddKPzzD
其實效果就會很好了,不過終究是假造的,會算出錯誤的結果。
除此之外影子沒有什麼方便假造的大招,所以光線追蹤對影子品質的改善會很明顯:
https://imgur.com/00nXkZB
https://imgur.com/EH8xtDU
總之大概是這樣。
光線追蹤可以自動解決很多讓遊戲看起來好看的技術問題,對大公司來說可以省人力,對
於本來就沒那人力的小團隊來說可以自動提升視覺品質。
理論上應該要是玩家跟開發者的雙贏,不過我想在那之前應該是老黃的口袋先贏。
最後也不仿感念一下投注無數心力讓我們不用仰賴光追就能看到好看光線的開發者們:
https://imgur.com/rfXjPTV
(通常大作都會有一大把獨立的 Lighting Artist,小廠可能身兼多職看不出來)
以上提供參考,本文沒有老黃贊助,老黃拜託請送我一張 4090。
參考資料(都引自 Digital Foundry):
Exclusive: Metro Exodus Enhanced Edition Analysis - The First Triple-A Game
Built Around Ray Tracing
https://youtu.be/NbpZCSf4_Yk
這部影片的 22:56 開始有解釋原本假造全域照明的工作流程
Cyberpunk 2077 PC: What Does Ray Tracing Deliver... And Is It Worth It?
https://youtu.be/6bqA8F6B6NQ
DF Retro: Metal Gear Solid 2 - A Kojima Masterpiece
https://youtu.be/mH2ZVlOLPNI
Ghostwire Tokyo on PlayStation 5: The Digital Foundry Tech Review
https://youtu.be/Nda2nU5XbzY
Alan Wake 2 PC Path Tracing: The Next Level In Visual Fidelity?
https://youtu.be/tXfwvohROPA