看板 C_Chat
作者 dklassic (DK)
標題 Re: [問題] 所以光追有很重要嗎?
時間 Fri Dec 15 08:42:10 2023


※ 引述《kobe30418 (吾有上將潘鳳)》之銘言:
: 抱歉原諒我的無知
: 玩遊戲跟看影片後
: 我還是不懂光追到底為什麼是目前的潮流
: 我真心感受不到光追的技術對我玩遊戲的體驗有增加多少
: 移動時我比較在意幀數跟花草樹木的物理動態
: 劇情過場時只要畫質好就好了
: 主要的注重的我看了半天,到底光追有什麼革命性的效果啊?
: 怎麼都在強調光追?

光線追蹤的革命性效果是:
開發者用更少的努力在假造上就能達成玩家看起來會覺得高品質的結果。
不過消費者跟開發者的荷包會一起折損(?

最簡單的理解方式應該是用 SSD 傳輸速度類比,載入超快應該是人人都有感的議題。但
在有 SSD 應對即時載入之前,開發者也會嘗試用遊戲設計來假造出無縫體驗
因為玩家不喜歡載入,遊戲設計為了降低硬性的載入,開始擺了一堆藏住載入的狹縫設計
。理論上藉由這個假造結果可以提升玩家體驗,但遲早累積起來反而會變成干擾體驗,如
果曾經玩過 FF7R 的話應該就知道其中載入狹縫的出現頻率有多可怕 XD


https://youtu.be/I4o7eSKLN40?t=37771

而如果有讀取速度快很多的 SSD 的話,開發者就不需要用這種設計來造假無縫。


簡單類比就到此為止,以下試著寫一篇長一點的文章解釋,可以拿杯飲料來邊喝邊看。


如果玩過的遊戲中覺得光線追蹤沒什麼幫助的話,代表這些遊戲本來就假造得夠好
而雖然所有光線追蹤帶來的體驗都能用其他方式假造,但通常:
-很難假造到完美
-效能也稱不上真的很好
-很容易引來特定情況下看起來很糟的結果
-要花專業人力的時間來假造

光線追蹤存在的話,帶來的幫助就是直接有完美的結果,不需要想著怎樣假造,只需要想著
怎樣讓最後的結果好看,當然因為效能需求很高而現在只能用低解析度跑是個問題,但解
析度的問題遲早會被強化的硬體解決。
再者就是用 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

--
努力開發遊戲中:
《自動混亂》https://store.steampowered.com/app/1274830/
帶有部分類 Rogue 要素的極簡風雙搖桿射擊遊戲,試玩版公開中
https://imgur.com/TQLbXfC.gif
《自動混亂:零式》https://store.steampowered.com/app/1423670/
極簡風生存射擊遊戲,著重在 10 分鐘一場的極簡循環。

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.251.101.92 (臺灣)
※ 作者: dklassic 2023-12-15 08:42:10
※ 文章代碼(AID): #1bUw3bOE (C_Chat)
※ 文章網址: https://www.ptt.cc/bbs/C_Chat/M.1702600933.A.60E.html
zseineo: 推1F 12/15 08:45
chocobell: 推2F 12/15 08:46
mikeneko: 專業推  雖然很多比較圖我根本看不出差在哪裡
這種東西就是拿兩個比對會覺得 喔~好像有比較漂亮喔
但實際上單一螢幕遊玩時完全感受不出差異
應該說,沒得比較當然就沒有差異,還不如穩定FPS更明顯3F 12/15 08:47

更準確來說是現在大多的遊戲工作室還是優先為了非光線追蹤設計 XD
所以才會非光線追蹤看起來還是合理的好,光線追蹤只是加了一點品質提升。

未來應該在某個時間點(PS6?)遊戲工作室會開始把光線追蹤當成預設必備選項,這時候
降低對非光線追蹤的視覺品質努力時,視覺差異應該就會明顯超多 XDDD
※ 編輯: dklassic (111.251.101.92 臺灣), 12/15/2023 08:51:58
coollee: 可以大幅減少開發時間 不然沒幾個廠商能像RDR2般手雕場景7F 12/15 08:51
e04su3no: 專業8F 12/15 08:52
iam0718: 有比較漂亮啦 但實際上沒開也不影響 也許有人看也分不出9F 12/15 08:54

再次強調是「現在的大廠的努力還是在非光追」所以才看不出來 XD
開發者有很多藏拙設計,例如說不要放一堆水漥來彰顯反射是錯誤的問題(望向蜘蛛人

fman: 專業推,光追可以是為場景光線的通用解,傳統則是設定後要微調,兩者最後結果通常會差不多,但光追對開發商較輕鬆,但對玩家就需要靠硬體效能來表現了10F 12/15 08:56
reader2714: 你這篇說白了就是把開發成本轉給消費者阿13F 12/15 08:57

開發者也還是要買那個硬體才能做啊,不要講得好像開發硬體是免費的一樣 XD
所以才說大概老黃的荷包先贏(?
※ 編輯: dklassic (111.251.101.92 臺灣), 12/15/2023 08:59:16
smallsalix: 聽起來就是手動模擬光影vs系統直接幫你實時計算
不過好奇這個技術是小廠也能方便使用的嗎
還是只有大廠有那個技術力?14F 12/15 08:59

小廠沒辦法投資資源自己做一個有光線追蹤功能的引擎的話,就是使用泛用商業引擎。
現在 UE5 就已經把光線追蹤的功能組都做好了。
※ 編輯: dklassic (111.251.101.92 臺灣), 12/15/2023 09:02:08
coollee: 現在很多獨立小廠都有用到 epic很GY但是UE5太香了
其實遊戲玩家雖的是 顯卡不是拿去挖礦 不然就拿去AI了
+上台G產能  水漲船高也是理所當然的17F 12/15 09:01
n0029480300: 推20F 12/15 09:06
emptie: 大推這篇21F 12/15 09:07
SakeruMT: 作為玩家這項功能還只是提升附加價值,沒有它不會怎樣,有它會有點不一樣。本體還是先求流暢不卡又好玩
我在想說要等普及到X060人人能光追全開才能迎來大爆發22F 12/15 09:08
inte629l: 推 原來常態是塞一顆顆點光源去調整哦?25F 12/15 09:11

Cyberpunk 2077 跟 Metro: Exodus 都有 24 小時日夜循環的性質,所以不好做預先計算
光照,就只能用點光源調整。也有其他解啦,但都不算完美。

jeremy7986: 推26F 12/15 09:12
tsubasawolfy: 現在NV推的光追已經是假光追不實時計算了27F 12/15 09:12
ben2227486: 推 總算搞懂光追的商業意義了 (轉嫁成本給消費者 (X28F 12/15 09:12
tsubasawolfy: 跟DLSS一樣靠AI模型模擬畫面上的呈現
AKA 即時P圖29F 12/15 09:13
hong1310: 推31F 12/15 09:15
dogluckyno1: 推32F 12/15 09:15
ACGUYKING: 聽起來這東西如果普及且全面應用可以大量節省成本
可現在很多廠是兩面並行,假光人需要大量人手,光追品質好但是顯卡起飛,結果就是畫面好了可是遊戲內容貧乏….大廠沒問題,但實在太多中型廠商在搞了然後遊戲內容很普通,沒那個屁股就別吃瀉藥啊33F 12/15 09:16
zaitas: 專業推38F 12/15 09:20
z86125: 推39F 12/15 09:21
bill03027: 專業推40F 12/15 09:22
h75311418: 可以開有在做光追的對比一下,反正都是看要不要追求那點畫面去選擇41F 12/15 09:25
CactusFlower: 你得到點了 答案就是要你掏錢給老黃43F 12/15 09:25
aeio23200: 漲知識推44F 12/15 09:27
funofHD: 推45F 12/15 09:33
WindSucker: 光線大師46F 12/15 09:34
koty6069: 推專業47F 12/15 09:35
Implication: 專業推48F 12/15 09:36
watson9487: 專業推49F 12/15 09:37
clou: 專業推50F 12/15 09:43
asdasd02tw: 專業51F 12/15 09:43
cena41: 感謝專業講解52F 12/15 09:45
mike2685a: 專業推53F 12/15 09:49
kevin870325: 推54F 12/15 09:52
※ 編輯: dklassic (111.251.101.92 臺灣), 12/15/2023 10:01:39
onlycat: 推專業55F 12/15 09:55
asdfgh369: 謝謝專業解說56F 12/15 09:59
kanokazurin: 推專業好文及圖例57F 12/15 10:00
joy3252355: 推這篇 應該要M文了58F 12/15 10:04
lee988325: 最容易看出差異的通常就是只有方向性光源的場景,例如晚上站在路燈地下。
底下*59F 12/15 10:05
winds4141: 好專業 好文推推62F 12/15 10:06
suyuting: 推,終於理解光追幹啥用了63F 12/15 10:11
naya7415963: 第一個看不出差別,不過後面幾個滿明顯的
是說常出現破綻的水面光波是不是也可以用光追做呀?64F 12/15 10:12

對,不過還沒有看過太多應用:
https://youtu.be/lGO6M7joVxM?t=16

s6598744: 推66F 12/15 10:16
rabbit38381: 推67F 12/15 10:18
donkilu: 專業推!68F 12/15 10:22
chichung: 專業推69F 12/15 10:23
※ 編輯: dklassic (111.251.101.92 臺灣), 12/15/2023 10:24:24
andy5656: 推70F 12/15 10:26
jay920314: 推,但因為傳統的造價太成熟,不是專門的演示場景又不清楚技術細節的話很容易分不出來71F 12/15 10:26

還有設計師也很懂得藏拙,沒人會特地設計一個很容易看出造假問題的場景 XD

lightdogs: 推爆73F 12/15 10:30
Alixwaltz: 好專業74F 12/15 10:42
Yachaos: 專業推75F 12/15 10:45
sword10723: 專業好文推推76F 12/15 10:52
pate786354: 專業推77F 12/15 10:53
moon1991: 推78F 12/15 10:55
skinbeef: 用心分析推79F 12/15 10:55
DeaGoo: 專業推80F 12/15 10:58
RevanHsu: 老黃是最後贏家 記得歐印81F 12/15 10:58
Litan: 推82F 12/15 10:58
AHHHHH: 太強了,推83F 12/15 11:00
rhox: 但事實上大部分玩家開不了光追,所以開發者要做兩倍功84F 12/15 11:03
handsome3437: 太長,而且我看不懂,但還是覺得有光追真的讚85F 12/15 11:08
MeaninglessL: 不能說全然轉嫁給消費者,如果顯卡不好,本來就不會光影特效全開,沒這問題86F 12/15 11:15
zzlee: 專業推!88F 12/15 11:42
guolong: 有拿2077試過,發覺根本沒差多少,而且風扇整個鬼叫起來後我就關了XD89F 12/15 11:47
willy4907: 優質文91F 12/15 12:10
rgbff: 專業推92F 12/15 12:29
v86861062: 推推推讚讚93F 12/15 12:30
j022015: 專業推94F 12/15 12:35
Shinpachi: 推95F 12/15 12:36
DsLove710: 推96F 12/15 12:38
SentLiTryPay: 推97F 12/15 12:39
Mikatuki: 推,為了畫面和效能不斷研究如何欺騙人眼的技術98F 12/15 12:51
meloxxl: 專業優文 現在ptt很少看到了99F 12/15 12:54
dylan2314: 太專業,大推!100F 12/15 13:02
eec2132469y: 好文推101F 12/15 13:04
leoxhu: 專業推102F 12/15 13:07
s9041200: 推103F 12/15 13:09
ur83friend: 跟我想的一樣,謝謝分享104F 12/15 13:18
Alllllogo: 推推105F 12/15 13:31
jdjfghr: 推106F 12/15 13:33
pd3mnd: 推107F 12/15 13:36
harryzx0: 推108F 12/15 13:57
dantevergil: 優文推109F 12/15 13:59
winken2004: 推110F 12/15 14:03
NicoNeco: 專業推111F 12/15 14:11
tearcross: 超用心推推,也很喜歡研究這種遊戲設計相關的東西112F 12/15 14:22
AI007: 推,專業文113F 12/15 14:41
Gentlemon: 推推114F 12/15 15:00
w9515: 推推 謝謝分享 我自己可能都不會那麼去細看XD 畢竟遊戲類型如果節奏偏快真的不會去注意115F 12/15 16:13
slowsoul1998: 還是覺得主要是來騙錢的 不開光追 顯卡能多撐兩年...117F 12/15 16:24
jpadesky: 專業推119F 12/15 16:28
oyaji5566: 專業優質好文120F 12/15 16:46
kerorokuzo: 優文怎麼沒有爆121F 12/15 17:39
reexamor: U文推推!!122F 12/15 18:08
DannyDrummer: 好專業123F 12/15 19:10
Mafty: 推好文124F 12/15 19:28
SYUAN0301: 推 目前就是體感爽50%卻要多花1.200%的錢
等未來硬體跟上普及吧125F 12/15 19:32
※ 編輯: dklassic (111.251.101.92 臺灣), 12/15/2023 20:08:29
warau: 專業推127F 12/15 21:28
louner: 原來如此 感謝分享知識 但也慚愧的想起自己玩遊戲時大都不會注意到這麼細節 頂多逛街閒晃時比較會注意周遭 進入戰鬥後就沒心力了128F 12/16 07:05

沒有什麼好慚愧的 XD 這些東西遲早變成理所當然,畢竟就會跟現實近似。
正常來說我們本來就不該特別注意現實的這些理所當然 XD

ziweidemon: 專業推131F 12/16 11:39
※ 編輯: dklassic (111.251.67.178 臺灣), 12/16/2023 12:11:32
theshape87: 其實玩遊戲時仔細看真的會有覺得哪邊缺了一點細節感覺,但對於大部分使用者用的螢幕或顯卡導致畫質不會開到最高,所以才覺得沒有差別132F 12/16 15:43
sssyoyo: 推135F 12/20 09:46

--
作者 dklassic 的最新發文:
點此顯示更多發文記錄