為什麼現實世界的角落看起來比螢幕空間環境遮蔽(SSAO)預測的要亮得多

為什麼現實世界的角落看起來比螢幕空間環境遮蔽(SSAO)預測的要亮得多

TL;DR – 真實的角落並不像典型的 SSAO 渲染那樣暗

日常室內角落的照片只顯示出微弱且不一致的邊緣暗化,而許多遊戲卻透過螢幕空間環境遮蔽(SSAO)施加明顯且均勻的暗化。這個差異源自於 SSAO 的近似、環境光著色的誤用,以及過度激進的權重設定。


前提:SSAO 的角落暗化問題

  • 遊戲開發者喜歡 SSAO,因為它能以低成本增加深度感。
  • 常見的 SSAO 人工製品包括 凸角的亮光暈凹角的銳利暗帶,以及 房間邊緣的整體過暗
  • 作者認為這些人工製品源於一個錯誤的觀念:認為現實世界的角落本質上非常暗。

四個導致因素(作者所列)

  1. SSAO ≠ 完整環境遮蔽 – 螢幕空間取樣會遺漏視角背後的幾何體,導致光線被低估。
  2. AO ≠ 全局光照 – 即使 AO 計算正確,它只捕捉遮蔽,無法呈現全局光照(radiosity)所提供的完整間接反射。
  3. 將 AO 套用於所有光照 – 某些管線會把 AO 乘入直接光照,造成暗化過度。
  4. 啟發式權重 – 藝術家常常提升 AO 強度以讓效果顯眼,卻掩蓋了現實世界中微妙的變化。

方法論:攝影實測真值

  • 相機:Canon 5D Mk II,JPEG 輸出,曝光 1/80 – 1/8 秒。
  • 處理:4 倍下採樣,對色度通道做 16 像素高斯模糊以抑制噪點。
  • 測量:沿穿過邊緣的線取 5×5(或 3×3)盒狀濾波像素平均值;以 sRGB 亮度圖繪製。
  • 注意事項:圖像為 sRGB,色調映射未知;圖表呈現的是 sRGB 數值,而非線性光。

案例研究

1. 極度暗化的角落(圖 1)

  • 這個角落看起來像典型的 SSAO 渲染,但大部分暗部其實來自 凹陷燈具投射的柔和陰影,而非環境遮蔽。
  • 圖表顯示陰影側的亮度急劇下降,另一側則呈現較溫和、由 Lambertian 驅動的暗化。
  • 結論:SSAO 會錯誤地把整條暗帶視為遮蔽,進一步放大效果。

2. 沒有主導柔和陰影的角落

左側角落

  • 直接光主要來自側燈;天花板向邊緣稍微變暗,牆面仍保持明亮。
  • 圖表證實天花板暗化僅屬適度;牆面亮度保持穩定。

中央角落

  • 主要是間接光照;圖表 平坦,顯示除 Mach‑band 感知外幾乎沒有邊緣暗化。
  • 使用較長曝光時,測得的暗化仍然很小。

右側角落

  • 強烈的透視使視覺暗化看起來很陡峭,但校正後的測量揭示出 漸進 的變化。
  • 後牆幾乎沒有暗化;左牆與天花板則呈現明顯但柔和的衰減。

3. 暗浴室角落

  • 即使在低光環境下,牆面與天花板的測量暗化也 極少
  • 短曝光與長曝光的圖表僅顯示輕微變化,與預期的明顯 AO 風格暈影相左。

4. 靠近光源的角落

  • 地燈的直接光在牆面上形成明亮區域;對側牆因 次要陰影 而暗化,並非環境遮蔽。
  • 圖表顯示左牆僅有微小的邊緣暗化,天花板卻因反射光而向牆面方向變亮。

5. 天花板與牆面之間的單一邊緣

  • 隨著環境光貢獻向暗側增加,測得的暗化 並未持續上升;牆面在後續樣本中甚至變平。
  • 這種不一致性說明單純的 AO 暗化模型無法捕捉如此細緻的行為。

數據揭示的事實

  • 邊緣暗化微弱且高度依賴情境——只有在其他因素(柔和陰影、透視、色彩對比)已經使表面變暗時才會出現。
  • Mach 帶(邊緣的感知對比)常被誤認為是真實的暗化。
  • 線性光 vs. sRGB——若將 sRGB 圖表轉換為線性空間,暗化會被放大,但仍遠低於遊戲中激進的 SSAO 曲線。

社群回應(精選評論)

"SSAO 成本低、效果不佳,過度使用會很難看…最簡單的解法就是把它調低。" – ahartmetz

"寫實不是目標;重點是好看。過了『驚嘆』階段後,大部分現實都相當平淡。" – overgard

"圖表顯示邊緣暗化不一致;SSAO 常常套用均勻暗化,與真實情況不符。" – logdahl

"Mach‑band 幻覺解釋了我們在過渡處感受到的暗化;在 SSAO 中人工加入會誇大此效果。" – BearOso


開發者的實用建議

  1. 將 SSAO 視為風格化輔助,而非物理精確模型——預期它只能近似間接陰影,而非重現測量得到的角落暗化。
  2. 將 AO 與直接光分離——僅將 AO 乘入環境光項,避免對已在陰影中的表面再次暗化。
  3. 依場景調整 AO 強度——使用適度的權重(例如 0.2–0.4),讓藝術家在需要時局部調整;避免使用一刀切的曲線。
  4. 考慮替代方案——如 FidelityFX CACAO、光線追蹤 GI 或預先計算的光照貼圖,皆能在相近效能下提供更精確的間接陰影。
  5. 以實際參考驗證——像本文所示的簡易攝影測量,可作為任何新 AO 實作的合理性檢查。

結論

攝影證據顯示,室內角落很少出現許多 SSAO 實作所強加的強烈、均勻暗化。感受到的暗度往往是柔和陰影、透視與感知對比的綜合作用,而非真正的環境遮蔽。因此,開發者應將 SSAO 視為視覺增強手段,謹慎限制其影響,並在需要寫實時考慮更具物理基礎的替代方案。

Sources