エミッタから出るパーティクル同士がめり込まないようにするには?

CINEMA 4DおよびBodyPaint 3Dに関する一般的な議論や情報交換をするフォーラムです。
BUTTON_POST_REPLY
usoruko117
記事COLON 5
登録日時COLON 2013年1月04日(金) 18:28

エミッタから出るパーティクル同士がめり込まないようにするには?

投稿記事 by usoruko117 » 2013年1月04日(金) 18:42

エミッタにオブジェクト(四角や丸)を子にしました。エミッタから一定方向に放出させたい時、オブジェクト同士がくっつく又はめり込まないようにするにはどうしたらよいのでしょうか?thinking particleを使用するのであればやり方をご教授くださいませ。

tofuji
記事COLON 828
登録日時COLON 2011年3月10日(木) 10:41
お住まいCOLON 東京都渋谷区

Re: エミッタから出るパーティクル同士がめり込まないようにするには?

投稿記事 by tofuji » 2013年1月05日(土) 14:37

 基本的に難しい話です。

 まず、「パーティクル発生前にオブジェクト同士の干渉を考慮し、適切な位置に生成する」ことは、基本機能やXPressoの追加ではできません。
かなり大きなプログラムを自分で書く必要があります。

 次に、パーティクル発生時にオブジェクトが干渉していた場合、いきなり干渉(衝突)を計算するとパーティクルは爆発します。
また、どんな方法を取ったにしろ、干渉の計算によってオブジェクトの飛び方は大きく変化します。

 逆の発想として、「めり込みそうなオブジェクトの方を小さくする」という方法もありますが、これは標準機能ではできません。
Tools4Dの「FitEffector」というプラグインイフェクタが必要です。


 以下、具体的に説明します。

1. 一番簡単なのは、標準パーティクルにダイナミクスを適用することです。ただし爆発します。

http://www2.11moon.com/sample_files2013 ... namics.zip
http://www2.11moon.com/sample_files2013 ... namics.mp4


2. TPを使うのは結構面倒で、しかもオブジェクトの形状を考慮した衝突や、オブジェクトの回転は表現できません。

http://www2.11moon.com/sample_files2013 ... ision2.zip
http://www2.11moon.com/sample_files2013 ... ision2.mp4


3. MoGraphのクローンを通常パーティクルにのせて、そのMoGraphにFitEffectorを適用したサンプルです。
オブジェクトがめり込まず、進行方向も変化しません。

http://www2.11moon.com/sample_files2013 ... ph_fit.zip
http://www2.11moon.com/sample_files2013 ... ph_fit.mp4
---

Toshio Fuji<gtofuji@gmail.com>

掲示板に書いたサンプルのまとめサイト
http://www2.11moon.com/index_as.html

usoruko117
記事COLON 5
登録日時COLON 2013年1月04日(金) 18:28

Re: エミッタから出るパーティクル同士がめり込まないようにするには?

投稿記事 by usoruko117 » 2013年1月05日(土) 18:35

ご回答ありがとうございました!色々と参考になったことと、難しいということがわかっただけでも助かりました。

miyata
記事COLON 512
登録日時COLON 2009年12月29日(火) 16:25

Re: エミッタから出るパーティクル同士がめり込まないようにするには?

投稿記事 by miyata » 2013年1月07日(月) 10:07

1. 一番簡単なのは、標準パーティクルにダイナミクスを適用することです。ただし爆発します。

http://www2.11moon.com/sample_files2013 ... namics.zip
http://www2.11moon.com/sample_files2013 ... namics.mp4
この設定で、リジッドボディタグのフォースにある位置追従と角度追従に3〜5の値を入れると
パーティクル発生時に爆発しても、その後パーティクルは元の軌道に戻るので、そこそこ自然見えると思います。
その後はパーティクル同士が衝突してもを押しのけていきます。

BUTTON_POST_REPLY