薛山
作為Blender最重要的新功能,幾何節點在動畫設計中有著舉足輕重的作用,比如我們今天的主題,制作自動覆蓋地面和物體的雪地效果:無論怎么移動物體,“積雪”都能正確地覆蓋在物體上方,而被物體遮擋的“地面”則不會出現“積雪”。如果用傳統思維,則需要粒子系統、動態繪畫等多項功能的同步操作,非常麻煩且效果不一定有保證,而通過幾何節點就能夠比較簡單地完成。那么,具體要如何操作呢?
首先我們需要搭建“積雪”效果的對象,可以是樹林、房屋,也可以是你感興趣的任何物體,如圖1所示,我就做了一座簡單的房子、一棵樹和一個平面,記得把這三個物體放到同一個集合里。

然后在剛剛搭建好的物體上方,新建一個平面,這個平面就是我們“積雪”的生成面。至此,咱們的建模環節就告一段落啦,如果你的模型選擇很簡單的話,這一步應該幾分鐘就能搞定。
“積雪”的總體思路,是讓生成面形成“積雪”并向下投影,覆蓋到我們之前做好的房屋、樹木和地面上,所以,在幾何節點里,我們第一步就是要讓“積雪”的生成面有足夠多的頂點,并讓它能夠向物體進行投影。
首先,為“積雪”生成面添加幾何節點,在編輯器里使用“細分網格”來讓它擁有充裕的頂點,然后將我們的房屋、樹木、地面等目標集合連接“實現實例”和“光線投射”,這就讓它們成為了“積雪”的投影目標,然后再利用“設置位置”,讓生成面能夠準確投影到目標上,具體設置可參考圖2。

顯然,這時候我們還只是得到了“積雪”生成面在物體上的投影,還需要進一步設置才能獲得積雪效果,所以接下來我們需要使用“點到體積”和“體積到網格”,將生成面轉換為類似積雪的網格效果。注意,到這一步的時候,“細分網格”“點到體積”和“體積到網格”的每項參數都會直接影響積雪的視覺效果,大家在設置時注意觀察,而且還要結合總體的頂點數量來判斷自己的電腦是否能承擔起高效渲染的任務。
然后我們需要連接一個“設置著色平滑”,就能得到如圖3那樣平滑的積雪效果了,而且可以看到,“積雪”受物體遮擋,并不會完全落到地面,這時候即便移動物體,遮擋效果也會自動變化,所以到這一步時,我們就已經基本實現了自動化的積雪效果。

不過,這時候的積雪看上去還是不那么真實,原因在于它太平整了,我們還需要為它添加一些凹凸變化,才會在視覺效果上更具真實感。這時候我們就需要再次添加“設置位置”,這個節點在幾何節點功能里非常常用,基本上任何需要調整位置的需求,都可以通過它來完成。
此時我們需要使用噪波紋理,連接矢量計算的“相減”,數值0.5,讓噪波紋理的計算中心回到原點,再連接矢量計算的“縮放”來控制影響幅度,這樣就能讓“積雪”呈現出凹凸不平的樣子了,最后再為各個物體添加材質,就能獲得如圖4的最終效果了。


本章所用幾何節點全覽
在這次的教程文件中,我們只需要在物體集合里加入新的物體,就能直接獲得積雪覆蓋的效果,所以從這個角度來看幾何節點算是一勞永逸的解決方案。不過你可能注意到,如果需要調整積雪生成面的尺寸,可能還得同步調整“地面”的尺寸,所以事實上這次的設計還有另外一個方法,可以實現這兩者同步調整,讀者朋友們感興趣的話可以給我們壹零社微信公眾號留言或私信,咱們在以后的文章里再接著聊。
2289501705397