在很多糖果廣告里,我們會看到一顆顆晶瑩剔透的糖果掉落在桌面上,鮮艷的色澤總能讓人不爭氣地抿嘴,在Blender里我們也同樣可以利用多種修改器和布料或軟體效果來實現(xiàn)這一目的,話不多說,立馬上手吧!
首先我們需要制作糖果的模型,大家可以自由發(fā)揮創(chuàng)意,比如用SVG格式的中文曲線或直接用英文字幕,也可以用一些常見的糖果形狀等等,在這里我們就不為大家做決定了,而為了方便演示,我們就以最簡單的方塊為例來拋磚引玉吧。
這些糖果模型在一開始必然是過于棱角分明的狀態(tài),所以我們需要讓它不那么生硬,所以第一步就是添加倒角修改器,使其邊緣更柔和,因為無論布料系統(tǒng)或軟體系統(tǒng)都需要利用諸多頂點來實現(xiàn)效果模擬,所以這時候我們需要接著給糖果加載一個3級左右的簡單型表面細(xì)分,這個級數(shù)不宜太多,因為我們需要做多塊糖果,頂點數(shù)量太多會直接影響緩存和渲染效率,具體設(shè)置參考圖1。
接下來我們就利用陣列修改器來實現(xiàn)多個糖塊的組合,在這里我設(shè)置為3個糖塊,并以圖2的形式進行錯位擺放,這樣我們就可以設(shè)計一個糖果從不同高度落下的效果了。
接下來我們進入這次的重點:布料系統(tǒng)。當(dāng)然,大家也可以用軟體系統(tǒng)來實現(xiàn)這個效果,但就這次教程來說,布料系統(tǒng)其實也能模擬得有模有樣,設(shè)置也同樣比較簡單,再考慮到布料系統(tǒng)相對應(yīng)用面更廣,所以還是更建議大家傾向于使用布料系統(tǒng)來進行學(xué)習(xí)。
在布料系統(tǒng)中,我們首先要調(diào)整頂點質(zhì)量,這個數(shù)值設(shè)置的其實是密度,會跟隨頂點數(shù)量變化而變化,在這里我們可以嘗試將頂點質(zhì)量設(shè)置為0.15kg,Blender的物理系統(tǒng)對于這種相對較大數(shù)值的計算往往更精確一些,不容易出現(xiàn)問題。
接下來需要勾選“內(nèi)部彈簧”并把“最大彈簧創(chuàng)建長度”設(shè)置為1,這個設(shè)置是實現(xiàn)糖果表面反彈效果的關(guān)鍵。接著再勾選“壓力”,將壓力值設(shè)置為5,這個設(shè)置會讓糖塊膨脹起來,看起來會更像一顆糖果,而不是一張沒有內(nèi)部壓力的布,最后再開啟物體碰撞里的“自碰撞”,這樣一來3塊糖果就能互相碰撞了,總體設(shè)置可參考圖3。
當(dāng)然,這時候你可能會發(fā)現(xiàn)3塊糖有些不夠,這時候有兩種解決方案,一是額外向上復(fù)制2組我們剛剛做好的糖塊,調(diào)整各自的陣列值實現(xiàn)錯位擺放的效果,然后再各自添加一個碰撞系統(tǒng),這樣就能在糖塊落下時實現(xiàn)互相碰撞的效果了。
這種方法雖然很直觀,但不那么簡潔高級,咱們來做個相對高級的方案,簡單來說就是直接再加載一個陣列修改器,讓3個糖塊向上進行復(fù)制,但因為我們要做錯位的效果,讓每一列糖塊落下時都有時間差,所以默認(rèn)的陣列并不能達(dá)到讓人滿意的效果。
這時候我們需要將原點設(shè)置到糖塊的質(zhì)心位置,然后新建一個空物體,并復(fù)制已有的陣列修改器,這時候系統(tǒng)會默認(rèn)把它放在第一個陣列修改器的下方,然后我們把X位置修改為0,這時候它就是以3個糖塊為一排向上堆疊的狀態(tài),這時候我們需要將“物體偏移”的目標(biāo)設(shè)定為空物體,然后將空物體沿Z軸旋轉(zhuǎn)180°,再沿X軸進行移動,以實現(xiàn)如圖4的擺放方式。
注意,這個方案雖然不需要再單獨設(shè)置碰撞系統(tǒng),但需要重新調(diào)整布料系統(tǒng)的設(shè)置,比如頂點質(zhì)量和壓力值都需要增大,同時還需要減小表面細(xì)分級數(shù)來降低頂點數(shù)量和緩存時間,最終可以獲得如圖5的果凍糖跌落效果。
糖塊使用的著色器節(jié)點一覽
其實嚴(yán)格來說,軟體系統(tǒng)來做這種軟糖效果會更真實一點,但還是那句話:布料系統(tǒng)的應(yīng)用面更廣,而且在大多數(shù)情況下它就已經(jīng)可以實現(xiàn)很不錯的視覺效果。Blender的各種物理效果其實最折磨人的地方還是在于需要不斷調(diào)整參數(shù),不斷重新烘焙緩存,有時候這個過程甚至?xí)掷m(xù)一下午,哪怕只是一個最終看上去很簡單的效果,這也是很多電影制作需要單獨開發(fā)軟件的原因之一。但無論如何,Blender布料系統(tǒng)仍有諸多特點可以挖掘,大家也開動腦筋,自己多嘗試吧。