1.在真實的世界中,地麵的凹凸跟攝像機並沒有直接的關係,但是在三維軟件中,由於最終渲染的圖片是一個固定的像素大小,同樣的凹凸效果由於遠近的關係會變得並不真實,尤其是在做動畫渲染的時候,遠處常常會出現閃爍的問題,這些都是因為均勻的凹凸效果造成的問題,如下圖所示,用通常方法製作出來的凹凸效果看起來並不自然,尤其遠處變得斑駁,渲染的時候還會出問題。
3.通過lightInfo節點,我們可以得到從攝像機的質心到地麵的采樣距離,此值是一個變量,原理如圖所示:
[page]
5.將setRange 的輸出值 setRange1.outValuex 輸出到 bump節點的 bumpDepth通道中。
渲染測試如下,顯然是不對的。
6.我們創建 Distance Tool 工具測量從攝像機質心到達凹凸平麵的起始點和結束點的距離,
測量結果如圖所示。
7.這樣我們就可以把這個值輸入到setRange 節點的 Old Min 和Old Max 通道中。
並且把min 和max 值分別設成0.2和 0.0 ,這樣設定的意思為::把lightInfo 的
距離采樣值轉化成bump的深度值,通過這個原理實現了根據攝像機到地麵的距離
不同,凹凸的值越遠越小直至消失。渲染結果如圖所示,結果已經非常自然。