這個標題看上去或許有一點矛盾,因為粒子系統(tǒng)在Blender里是一個獨立功能,我們?yōu)槿魏我粋€物體添加粒子系統(tǒng)時,它都會以物體為原點作為發(fā)射端或皮膚端,而幾何節(jié)點的功能基礎也同樣建立在物體本身,但它能實現很多粒子系統(tǒng)無法實現的功能,比如我們本期教程將制作的效果目前就只能通過幾何節(jié)點來實現。
首先,打開2.93Beta或3.OAlpha版本,將默認的方塊縮小,應用縮放,然后新建一個平面,而這個平面就是我們應用幾何節(jié)點的“主角”,如圖1所示為平面添加幾何節(jié)點,你會在修改器里發(fā)現自動添加了一個幾何節(jié)點修改器,當你需要對這塊平面做多種功能復合時,記得一定要準確設置修改器的順序,這一點跟粒子系統(tǒng)等功能模塊是相同的。
接下來我們讓平面作為源,方塊作為實例來做粒子效果,在組輸入和組輸出之間加入一個“點實例”,將物體設置為方塊,你會看到平面消失了,取而代之的是4個方塊,而這4個方塊所處的位置其實恰好就是平面的4個頂點,如果對平面做細分,你會發(fā)現每一個新增的頂點都會覆蓋一個方塊,相對于無法調整,只能隨機分布的粒子系統(tǒng)來說,幾何節(jié)點可控性要強很多。
而且即便是隨機分布,幾何節(jié)點同樣更容易調控參數,在點實例之前加入“點分布”,你會發(fā)現方塊的布局被打亂了,你可以通過調整密度最大值來增加方塊,但如果你不想讓方塊之間互相重疊,可以將分布方式從隨機改為泊松盤,然后調整最小間距值,這樣它就能在方塊之間不重疊的情況下實現粒子效果,如圖2所示。
想要控制縮放,首先是可以通過屬性隨機化來打亂方塊的縮放,當然這個方法也可以控制位置、旋轉等,屬性是幾何節(jié)點里比較重要的功能模塊,很多時候我們都需要確定調整的究竟是哪個屬性,而且我們還可以添加新的屬性。接下來我們就需要新建一個球形空物體,邏輯上來看就是將空物體與方塊之間的距離作為系數,來乘以縮放值,這樣就實現了距離越遠,縮放越大或越小的目的。具體操作上,首先需要在幾何節(jié)點編輯器里新增一個物體信息,并將其與幾何數據通過屬性矢量計算來進行“距離”比較,這時候就可以定義一個新的屬性“distance”,也即距離,然后我們使用縮放來乘以這個距離,并將結果反饋同縮放,這時候你會發(fā)現所有方塊都消失了,這時候只需要在點分布后面跟一個填充屬性,將縮放值設定為1.即可看到如圖3的效果了。
如果你想要中心大而邊緣小,可以在屬性矢量運算和數學屬性之間新建一個屬性顏色漸變,屬性和結果都設置為distance,翻轉顏色漸變就能實現了,而如果想要進一步控制縮放的范同,可以在屬性顏色漸變前再加入一個數學屬性,用distance去除以一個浮點數,就能實現范同的縮放了,再加上旋轉和位置的屬性隨機變化后,就能實現與空對象原點越近的方塊縮放越大,反之越小的效果了,具體可參考圖4。
在視頻教程的片頭,我們就利用了本期學習的內容設計了一個跟隨飛行器移動而迅速縮放的花叢效果,如圖5所示,有興趣的朋友可以掃碼觀看。