maya制作光線陰影
MAYA制作光線陰影
制作方法比較簡單,非常使用,希望能給大家?guī)韼椭?br />
下面教程開始
在用Maya默認渲染器渲染投影的時候,我們可以設置兩種陰影類型,分別是Depth Map Shadow 和Raytrace Shadow,Raytrace Shadow 是基于真實的光學物理運算得到的,但是計算速度很慢,Depth Map Shadow雖然渲染速度很快,但是不能很好的表現(xiàn)體積光源投射的陰影,比如一盞面光燈的陰影。
我們觀察這樣的陰影有其獨特的特性,即從物體和地面的接觸點開始,陰影是由實到虛變化的,如下圖所示,我們可以看出兩種陰影的明顯區(qū)別。這個教學介紹一種可以用Depth Map Shadow方式來模擬真實陰影變化的方法。(圖01)
第一步
打開場景,或者我們參考上圖制作一個相似的場景。分別在三個關(guān)鍵位置創(chuàng)建三個Locator,如圖命名為Lightlocator、Startshadow和Endshadow,分別代表燈光的空間位置、陰影的開始位置和陰影的結(jié)束位置。(圖02)
第二步
將三個Locator用鼠標中鍵從Outliner窗口拖至Hypershade窗口中,同時創(chuàng)建兩個DistanceBetween節(jié)點,如圖鏈接,以計算射燈和兩個Locator的距離值。(圖03)
第三步
繼續(xù)創(chuàng)建PlusMinusAverage和MultiplyDivide兩個節(jié)點,利用PlusMinusAverage求上圖中1和2的差值。而MultiplyDivide節(jié)點則輸出數(shù)值提供給下一步的計算,連接方法如下圖所示,PlusMinusAverage的計算方式選擇為Subtract減法計算。 這樣我們可以計算出兩個距離差值。MultiplyDivide節(jié)點是為后面的計算作準備。(圖04)
第四步
下面我們創(chuàng)建一個LightInfo節(jié)點,鏈接方式如圖所示,通過這個節(jié)點的SampleDistance屬性我們可以得到主燈到被作用物體的采樣距離,這個值是一個隨著物體位置上采樣點不同而變化的值,同時再鏈接一個PlusMinusAverage節(jié)點,為后面的計算做準備。(圖05)
第五步
把這兩部分節(jié)點群鏈接如下圖所示。MultiplyDivide節(jié)點設置為Divide除法計算。這樣我們可以把Lightlocator到Endshadow和到Startshadow的距離差值,通過SampleDistance得到的燈光采樣距離進行計算,由于SampleDistance是一個變量,所以這個比值也是一個變化的數(shù)值。(圖06)
第六步
創(chuàng)建兩個Remp節(jié)點,通過上面得到的數(shù)值來控制燈光投影的屬性,鏈接方法如下,我們創(chuàng)建的Clamp節(jié)點的作用是截取了一段數(shù)據(jù),這段數(shù)據(jù)的范圍被設置成0到1,以此來控制Ramp節(jié)點的vCoord屬性。(圖07)
第七步
如圖調(diào)整Ramp的顏色分布來控制燈光的陰影深度分布和陰影的。(圖08)
第八步
通過參數(shù)調(diào)整得到比較好的測試結(jié)果,如下圖所示。(圖09)
此練習的基本原理是:用主燈和地面投影范圍起始結(jié)束點的距離差值與用LightInfo采樣得到的數(shù)值之間的比例關(guān)系,來控制陰影的分布。模擬出了類似Raytrace Shadow的效果,雖然節(jié)點有點復雜,但是渲染速度飛快。希望本教程能給大家?guī)韼椭?br />
上一篇:maya破舊金屬材質(zhì)