一動貼圖就變暗/閃爍:高Tile貼圖的困境和解決
提示:這個現(xiàn)象很難解釋,因為只是“感覺閃爍”和“感覺變暗”
最近我碰到了一個比較奇怪的問題,在構(gòu)建一個地面場景時,發(fā)現(xiàn)相機一動起來,地面就會變暗。而且這種暗是比較“細微”或者說是“subtle”的。如果是游戲渲染畫面會很容易察覺,但是錄制成視頻就看不出來了。
而且只在高tile貼圖,而且亮度稍微暗一些的情況下會比較明顯。
貼圖是網(wǎng)上的2K pbr貼圖。

實測其他2K貼圖也會有這個問題。而且其實也不需要2K,只要tile拉高到一定程度,都有。
mipmap,aniso就算拉得很高,對有些貼圖能緩解,但無法根治。
我換了一個棋盤圖,并且調(diào)暗了BaseColor,錄了一個視頻。視頻里終于能看出來了。開頭比較明顯,后面換成普通貼圖,視頻里也看不出來,但實際游戲中閃爍還是比較容易觀察到的。

我想過很多解釋,但都沒有完美解釋這個現(xiàn)象的。不過大體繞不開幾個點:
相比于顏色,人眼對亮度更敏感。投稿出來的視頻顏色亮度范圍會小于游戲渲染時的亮度范圍。
如果是人眼應(yīng)該不會有這個問題,或者說沒有這么明顯,因為每個人眼像素實際是ConeTracing,會混和周圍棋盤像素。所以可以說這是一個欠采樣問題。
至于為什么一亂動就“感覺閃爍”,而勻速走就只是“感覺變暗”,我猜是因為混合后亮度有變化,而人眼和大腦對規(guī)律明暗變化的“注意力”會降低,那些不規(guī)律明暗變化像素的注意力會提高。對棋盤貼圖來說勻速走是感覺變暗,如果換成noise貼圖或者普通貼圖會明顯覺察出一個pattern。
至于為什么需要調(diào)暗一些,這個現(xiàn)象才更加明顯,我猜人眼對過亮或過暗都不是很敏感,而是有一個中間區(qū)域。
不論怎樣,得解決這個問題。針對第2點,我干脆對PBR的Albedo和Normal貼圖進行了2.72的高斯模糊。(動態(tài)模糊實際已經(jīng)開了,但仍無法解決地面的欠采樣,而且你又不能開太夸張。)
我在想,如果當(dāng)今電腦都配備眼動儀,更合理的辦法是從視點中心到周圍增加模糊。但可惜我們的科技發(fā)展似乎總在走歪路。
后來我又使用技巧增加玩家對中心的感官,同時還能減少tile貼圖的重復(fù)感,見文章。
總之,這樣一來感官問題完美解決了。

不過貼圖也不再“高清”了。但是帶模糊的貼圖讓我感覺反而更加增加了真實感。結(jié)合最近玩了《極品飛車16》,其“體感畫質(zhì)”我感覺甚至遠超其10年之后的《地平線5》,這一點我之后也想發(fā)一篇文章仔細說一說。
