2026/05/11

流體模擬該輸出速度資料(Velocity channel)嗎?

 

我一直有個印象是,在流體模擬(fluid simulation),不管是有enable velocity channel或是沒有,系統內部都會自動產生速度通道進行計算,因此,就算你沒有勾選export velocity data也沒關係。差別只在最後沒有輸出速度資料,不能在算圖時產生動態模糊,就這樣而已。

錯!由於流體運算是一個frame接著一個frame算的,因此就算是系統會在記憶體中暫時產生速度資料,如果沒有儲存起來的話,進到下一個frame時,對於一級模擬不會有問題,但是對二級模擬就影響大了。

什麼是一級模擬,什麼是二級模擬。一級模擬以船在水面移動來說,水就是一級模擬,而根據水的運動所產生的splash,foam水花與泡沫這些就是二級模擬。當你在算第一frame後,水產生的速度資料必須儲存起來,然後在第二個frame時,splash與foam才能利用這個速度資料產生正確的運動。否則,splash與foam都會在每一個新的frame直接讀取水產生的速度 (而不用上一個frame)。

最終,你還是可以得到有水花,泡沫的模擬結果,但是粒子數量會變少好多,而且動態會變得比較不真實。所以簡單來說,對ship wake這種模擬來說,一定要export velocity channel。

為什麼這麼在乎有沒有輸出velocity channel呢? 這跟產生FX asset有關。多一個通道就增加檔案大小。有時產生的cache資料可能會上百G。

那對於模擬煙霧呢? 似乎可以把velocity channel disable,對煙的動態沒有影響。


[相關文章]

Chaos Phoenix FD的最後一支教學影片

Phoenix FD Foam Splash Alembic動態模糊的設置

No comments: