Houdini 基于Motion Vector的爆炸特效制作
〇、前言
使用Houdini進行數(shù)字資源創(chuàng)作最重要是的深入理解節(jié)點式處理的方式,每個節(jié)點是個運算,把輸入的資源按一定的算法處理后輸出給后續(xù)節(jié)點。
在使用Houdini進行動力學(xué)模擬時,因為實時計算會消耗大量的CPU或GPU算力,因此根據(jù)步驟節(jié)點合理的設(shè)置緩存很重要。
此外,使用Motion Vector意味著不需要太高的幀率,建議將FPS設(shè)置為10-15。
一、使用Houdini的Pyro制作爆炸特效
1.1、設(shè)置爆炸源
Houdini的爆炸源可以是任何可以體素化的對象(多邊形物體、粒子等等)。

選中用于創(chuàng)建爆炸源的物體,使用PyroFX工具欄的Explosion快速搭建爆炸所需要的節(jié)點網(wǎng)絡(luò)。

pyro_import子網(wǎng)絡(luò)用于導(dǎo)入數(shù)據(jù)并體素化,pyro_sim子網(wǎng)絡(luò)用于進行爆炸模擬。
1.2、體素化結(jié)果數(shù)據(jù)緩存
進入之前用于產(chǎn)生爆炸的子網(wǎng)絡(luò)會發(fā)現(xiàn)多了5個節(jié)點,create_fuel用于把幾何體轉(zhuǎn)化為粒子,add_noise用于產(chǎn)生擾動,rasterize用于體素化,OUT_fuel用于輸出,RENDER用于屏蔽渲染。

OUT_fuel下添加一個filecache節(jié)點,用于緩存體素化的結(jié)果。


1.3、光照與渲染相機環(huán)境

1.4、調(diào)試動力學(xué)模擬
進入用于模擬動力學(xué)運算的pyro_sim子網(wǎng)絡(luò),調(diào)式模擬出想要的爆炸結(jié)果。

調(diào)試時可以盡量打開各個節(jié)點的OpenCL加速,加快效果的迭代效率。但是生成最終結(jié)果時建議關(guān)閉OpenCL加速,因為顯卡顯存容量過低,容易導(dǎo)致動力學(xué)模擬出錯。
官方提供的快捷框架只是最基本的框架,要調(diào)試出滿意的效果,需要增加更多的細節(jié)與不斷的迭代。
爆炸效果的控制關(guān)鍵在于燃料和溫度的控制,并以此來催動速度、熱量和煙霧。
1.5、緩存模擬數(shù)據(jù)
調(diào)試模擬結(jié)果滿意后進入pyro_import子網(wǎng)絡(luò),打開import_pyrofields的緩存。

1.6、調(diào)節(jié)渲染效果
切換到mat網(wǎng)絡(luò),調(diào)節(jié)fireball的參數(shù)。

二、輸出序列幀和motion vectors
注意:GameDev 工具箱需要連接外網(wǎng)在線安裝。
進入out網(wǎng)絡(luò),創(chuàng)建GameDev Texture Sheets節(jié)點,設(shè)置顏色圖序列幀導(dǎo)出方式,并導(dǎo)出。