2015/07/10

為何V-Ray 3.0預設的色彩映射是Reinhard?



原文:Reinhard as default color mapping
編譯:Hammer Chen

Flavio問:「我收到最新版的V-Ray 3.0 beta 看到新功能。我好奇為何要把預設的color mapping設定為萊恩哈德色彩映射(Reinhard)?」

vlado答:「第一、即便是用新的設定(reinhard色彩映射) V-Ray的產出還是線性的(因為預設的Reinhard參數並沒有對顏色進行修改)。第二、大部分的人只是用color mapping調整影像亮度或是減少過曝的區域,最後他們還是切換成Reinhard模式;而舊版的預設定是Linear沒什麼用處,而且還很容易產生顏色反轉或是雜訊的問題。 (譯者註:vlado先生為V-Ray之父)



用戶還是可以繼續用(全部都用預設值 然後其他在後製處理) 。對用戶來說不需要做任何改變,不需要更動V-Ray參數就能繼續使用正常的線性工作流程,所以對大部分的用戶來說, 把Reinhard設定為預設的color mapping的影響跟過去一樣。事實上,大部分的用戶不會發現這個更動 (可能要看到log才會發現吧)」

Stan答:「以下是我對color mapping的理解,有錯的話請更正我。基本上,如果你正確地設定了線性工作流程...
- 勾選 "don't affect color"
勾選了"don't affect color" 代表告訴V-Ray 不論你用什麼color mapping 最終都輸出線性的資料。至於細分採樣的部份(因此會影響到算圖時間),當你進入線性模式,就是在對”真實”的東西算圖,例如像太陽的單一像素(假設浮點數為70) 而其相鄰的像素 (例如60-35-20-5-2) 這些像素會強制讓DMC產生很多的採樣,這樣才能對如此少像素的範圍進行反鋸齒計算。你可能不需要所有的採樣都算完,超過3的都會變成白色,即便你在後製怎樣調整都無效。

如果你希望維持線性,但該採樣到X數值就夠了(因為它最後算出來還是會等於白色),那你可用clamp to x的選項,這會讓超過X數值時的像素變成白色,但是在該數值以下還是全範圍的顏色採樣,依舊保持線性。

如果你將color mapping設定為HSV Exposential,那在VRay計算該像素的真正DMC細分之前,你就會套用一條曲線,這表示太陽的數值70的採樣會低於0.995,其周圍的像素可能會是0.994 或0.993 而V-Ray會產生比較少的採樣,因為範圍要比2-70之間還要小很多。

但如同我在前段所說,如果你勾選了don't affect color 最終還是會輸出線性,因此太陽必須要是70浮點(但是採樣是在0.995)輸出會寫入為70(理論上 你會得到有點不正確的真實DMC採樣 但幾乎看不出來)。

- 不勾選"don't affect color"
如果你不想要線性輸出,就要取消勾選"don't affect color" 這表示Vray會把color mapping與gamma燒到圖檔當中。

最後有這幾種結果

  • max output 設定為1 gamma =2.2 輸出成exr 最後把gamma 2.2燒進圖檔中
  • max output 設定為2.2 gamma =2.2 輸出成jpeg 最後把gamma 2.2燒進圖檔中
  • max output 設定為2.2 gamma =2.2 輸出成exr 最後會得到把gamma 4.4燒進去的圖檔

當然你可以在任何一個後製軟體再次套用反gamma。好在Vray 2.4 Chaos Group提供了第三種選項:

- Color mapping only (no gamma) :
只做Color mapping但是不帶有gamma。這個選項超贊的!這表示你可以享用color mapping的優點,可是不用把gamma燒進輸出的檔案中 。Reinhard現在變成預設的參數。我很感謝Vlado這政策 ─ 將color mapping預設為Reinhard。大家必須要能理解為何這是一項正確的決定。這就是為何我在解釋的時候先用HSV Expo做說明,而不是Reinhard。Linear當然會是線性,但在linear與Reinhard之外,其他任何的color mapping 會直接將曲線套用的算圖上,即便是你將bright multiplier設定為1。可是Reinhard不會這樣!如果我有講錯,Vlado請更正我。就我理解Reinhard color mapping會從線性(當bright multiplier為1時)到Reinhard curve(當bright multiplied為0時)。所以基本上,操作者要調整bright multiplier到適合他正確的曝光值,產生介於linear 與 Reinhard之間的混合曲線。

因此,把Reinhard設定為預設的color mapping ,若是你不改變bright multiplier ,其實就是以linear在算圖。因此用戶如果沒去調整bright multiplier 其實就沒改到任何東西(即便是他們認為是在用Reinhard演算法,實際上結果還是linear)。但其餘的用戶想去調整bright multiplier(也知道最終輸出不是線性的) 如同Vlado所說,大部分時間會使用Reinhard。看到Vray這塊還是有很多人搞不清楚,我想之後再寫一篇相關的教學說明之。

以上希望對各位有幫助!我自己是花了很多時間才搞懂。一旦你弄懂了,就能融會貫通。」


[延伸閱讀]
VRay 3.0 Beta Review實測報告

V-Ray的color mapping色彩映射類型

No comments: