薛山
氣五一假期將至,如果說要選一個最具有“假期”代表性的物品,氣球或許會是孩子們的第一選擇,而Blender作為一款3D設計和物理模擬軟件,要怎樣制作一個氣球飄浮在空中,甚至還可以互相碰撞互動的場景呢?一起來學學看吧!
球的制作其實是比較簡單的,我們可以使用經(jīng)緯球作為基礎來進行設計,但經(jīng)緯球有一個問題就是頂點分配不均勻,它呈現(xiàn)的形態(tài)是頂點在兩極非常密集,而中間部分則相對稀疏,因為我們最終的物理計算是基于頂點進行考量,所以這樣的頂點分布其實是不太合理的,所以我們要稍微改一下設計思路。
直接利用系統(tǒng)默認的立方體,為它添加3級的表面細分修改器,這時候你會發(fā)現(xiàn)立方體變成了一個不那么圓的球體,如果想要它變成規(guī)整的球型也很簡單,只需要再添加一個“鑄型”修改器,將系數(shù)設置為1,這樣就能得到一個頂點分布非常均勻且形狀規(guī)整的球型了。
接下來就是關鍵了,要讓氣球動起來,就必須要有物理系統(tǒng),而最適合氣球的物理系統(tǒng)就是布料系統(tǒng),因為布料系統(tǒng)的碰撞效果很好,也不像軟體系統(tǒng)那么容易出錯,比較直觀。那么具體該如何操作呢?首先我們要給“氣球線”最底部的四個頂點新增一個頂點組,這個頂點組的作用就是讓氣球呈現(xiàn)出拴在一個固定位置的樣子,接下來就給氣球添加布料系統(tǒng),但我們知道布料系統(tǒng)的默認重力是向下的,所以我們要先找到它的“力場權重”,把重力改成-1,這樣氣球就能往上飄了。
如果只有一個氣球,看上去可能會有些空洞,所以我們可以進入氣球的編輯模式,復制多個氣球并適當調(diào)整旋轉角度,但注意要把底部頂點放在盡量重疊的位置上,這樣可以獲得比較好的視覺效果,然后再打開碰撞和自碰撞,調(diào)整步數(shù)和碰撞距離,在設計完成后播放視頻就能看到氣球之間可以互相碰撞了。
但這時候可能又有一個新的問題,那就是氣球之間碰撞會發(fā)生不可逆的形變,這顯然和真實的氣球明顯不符,所以我們需要再給氣球添加“壓力”值,這樣一來氣球就會自動膨脹,碰撞后也能迅速復原,不同的壓力值也有不同的回彈效果,大家可以自行嘗試。
如果想要做一個氣球跟隨移動的動畫效果呢?其實也很簡單,進入氣球的編輯模式,選中所有氣球線最下面的頂點,或者在頂點組里直接選擇咱們之前做的釘固組,然后使用“Ctrl+H”為它們添加一個新的勾掛空物體,這時候你會在修改器頁面看到勾掛修改器,把它放到布料系統(tǒng)的上方,然后這時候一邊播放視頻一邊移動空物體,你就能看到氣球就像被空物體牽著一樣在飄動了。最后我們再給氣球加載材質(zhì)和布設環(huán)境,一個完整的氣球飄浮碰撞效果就完成啦!
總體來說,氣球飄浮碰撞的效果實現(xiàn)起來還是非常容易的,但整個過程里會有不少稍有不慎就會無法實現(xiàn)最終效果的細節(jié),比如勾掛修改器必須在布料系統(tǒng)前面、壓力值的設置不能過高、編輯模式下最好使用3D游標作為軸點等等,所以大家在自己設計的時候可千萬不要粗心大意,忽略這些細節(jié)哦。