當使用者使用 YafaRay 預設的反鋸齒(Anti-Aliasing)設定著色時,通常的結果是鋸齒狀的直線,並且畫面充滿了雜訊,如上圖。要解決這些問題,就要到 Properties 視窗 -> Render 分頁 -> Anti-Aliasing 面板(下圖)來調整。
YafaRay 透過提高每個畫素的取樣數來達到消除鋸齒和雜訊的目的。提高取樣數的方式有兩種,一是單回合(Pass)大量取樣,另一則是多回合少量取樣。反鋸齒設定第一個選項是 Filter (上圖 1),指的是一個像素周圍多個取樣的混合方法,官網的建議值是 Mitchell。
當回合數=1(Passes, 上圖 3),YafaRay 只會進行 1 回合的取樣,此時影響成像品質的參數是每個畫素的取樣數(Samples, 上圖 2),取樣數愈高,品質愈佳,所需時間也愈久。下圖是以 Photon Mapping 照明方法著色,Passes=1, Samples=20, 著色時間 18'38"。
當 Passes > 1,YafaRay 便會進行多回合的取樣,此時影響成像品質的參數除了Samples,又加入了 Additional Samples (4) 和 Threshold (5)。多回合取樣的第一回合,每個畫素的取樣數由 Samples 決定,此後則由 Additional Samples 決定。同樣地,兩者數值愈高,品質愈佳,所需時間也愈久。下圖是以 Photon Mapping 照明方法著色,Passes=20, Samples=1, Additional Samples=1, Threshold=0.05, 著色時間 7'22"。
Threshold 門檻值是 YafaRay 用來減少著色時間的方法。原理是比對兩個畫素的顏色差異,當顏色差異小於門檻值,則 YafaRay 就不會對這兩個畫素取樣,因此能減少第一回合以後每個回合的取樣數,而達到減少著色時間的目的。Threshold 愈高,每回合排除的取樣畫素就愈多,時間也愈短,但有可能無法達到消除鋸齒和雜訊的效果。注意 Threshold=0 就會對每個畫素取樣。官網討論區的建議值為 0.002 ~ 0.003,不過有時我用 0.005 就可達到不錯的效果。下圖是以 Photon Mapping 照明方法著色,Passes=20, Samples=1, Additional Samples=1, Threshold=0.005, 著色時間 18'32"。
單回合大量取樣的缺點是如果覺得取樣數不夠,就必須要重新著色。因此在不確定取樣數的情形下,多回合少量取樣是較佳的策略,也就是把 Passes 值設大(> 1000),等品質覺得可以接受了再停止著色程序。
可惜的是 YafaRay 0.1.2 beta 5a 目前無法像 LuxRender 一樣每隔一段時間自動儲存著色結果,供使用者比較選擇,也不能儲存著色進度,以後再繼續。
YafaRay 學習筆記
留言
張貼留言