【PyroFX】のシミュレーションをカメラの視野角内だけシミュレーションさせたい。

   4007   6   2
User Avatar
Member
4 posts
Joined: Aug. 2019
Offline
【質問と疑問】
HoudiniのPyroFXのシミュレーションを
カメラの視野角内だけシミュレーションさせて、
カメラの視野外はシミュレーションさせない方法が知りたいです。
シミュレーションを.bgeoなどで保存するとき少しでも軽くするためです。

★下記海外のサイトにヒントのようなものもあるのですが、翻訳しても理解できず、
サンプルリンク「clipfluid.hipnc」も切れているので解決しませんでした。
https://forums.odforce.net/topic/20496-dop-camera-culling-smoke/ [forums.odforce.net]


【考えてみたこと】
①PyroFXの「Pyro_sim」→「Gas Resize Fluid Dynamic」→「Max Bounds」→「Clamp To Maxium…」→「Flom Object」
で、丸いオブジェクトを選択したとします。
しかし、シミュレーションされると範囲は四角いものになります。
ここを多角形にできればカメラの範囲内だけに収まる気がするのですが、どうなんでしょう。

②「VDB」→「From Camera」にカメラを読み込ませて、視野角を設定することまではできましたが、
例えばその視野角のオブジェクトを作成して「delete」などを利用して範囲外を消すようなことは出来るのでしょうか。
そもそもDOPとは関係なさそうですが、、、。

またこの場合マッチムーブなどでカメラが動くと欠けた部分が出てくるのでしょうか。
(※見える予定の範囲のみシミュレーションなどは可能なのか。)

そもそも、できるのかは不明ですが、少しでも画面外に出た無駄なシミュレーションを減らしたいです。
かなり調べましたが中々解説している人がいないので、分かる方がいらっしゃればご教授いただければ幸いです。
User Avatar
Staff
335 posts
Joined: April 2015
Offline
昔、こんなのを書いたことがあります。
http://ikatnek.blogspot.com/p/fluid-volume-culling.html [ikatnek.blogspot.com]
User Avatar
Member
4 posts
Joined: Aug. 2019
Offline
KenTaki様

早速ご返信いただき誠にありがとうございます。

今回の質問の件でいろいろ調べているときに記載いただいた記事を読ませていただいたことがありました!
添付ファイルもダウンロードして内容を一通り拝見させて頂きました。
私の勉強不足もありますが、現在のバージョンで1から作ろうとするとノードと異なるのか、うまく組めません。
PyroFXのExplosionで使用を考えているのですが応用などをすれば可能なものでしょうか。
お忙しいところ恐縮ですが、もし可能でしたらご教授いただけますと幸いです。
User Avatar
Member
41 posts
Joined: July 2013
Offline
こんにちは。

私の知っている限り、シミュレーションは角度が直角の四角形の範囲でしかできなかったと思います。
なのでシミュレーション後にカメラ範囲外のデータを削減したものをアップロードしました。
シミュレーション中にカメラ範囲外を削除するのもやってみたのですが、カメラの動きによってシミュレーションに影響が出てしまいますね。
どうでしょうか。。
Edited by Koya Masubuchi - Aug. 23, 2019 20:33:41

Attachments:
clipPyro.hipnc (1.2 MB)

User Avatar
Member
4 posts
Joined: Aug. 2019
Offline
Koya Masubuchi様

お世話になっております。
お忙しい中サンプルファイルまで作っていただき誠にありがとうございます。
中身を見て驚きましたやりたいことに的確でしたのでとても感謝しております。

カメラ範囲外を削除したものとしてないものそれぞれ50frame分を.bgeoで保存してみました。
【結果】
カメラ範囲外削除:2.38GB
カメラ範囲外あり:15.1GB
とかなり削減されていました。

シミュレーション時、範囲外を消すとカメラの動きによってシミュレーションに影響がでてしまうことに関しても教えていただきありがとうございます。
シミュレーション時間は変わりませんが、複数の.bgeoファイルを読み込んで再度houdiniで処理をするとき軽くなりました。

この度は本当ありがとうございました。
また機会がございましたら何卒宜しくお願い致します。
User Avatar
Member
45 posts
Joined: July 2005
Offline
単にファイルサイズを下げたいのでしたらボリュームを16bitで書き出すのも良いですよ。
サイズは大体半分になります。

VDBの場合は、PrimitiveSOPでVolumes>VDB>Write 16bit FloatsをONにしてbgeoを書き出すと出来ます。
User Avatar
Member
4 posts
Joined: Aug. 2019
Offline
sho様

お世話になっております。
お忙しいところ『16bitで書き出す方法』をご教授いただきありがとうございます。
実際に組んでみました。Koya Masubuchi様が教えてくださったものと組み合わせることでさらに削減されました。
通常の場合と16bitの場合どのくらいの差があるかはレンダリングをしていないので現段階では分からないのですが、とても参考になりました。ご回答いただいた方々には感謝しかありません。
この度はありがとうございました。
また機会がございましたら何卒宜しくお願い致します。
Edited by sho_cg - Aug. 28, 2019 10:06:09
  • Quick Links