goo blog サービス終了のお知らせ 

フリースタイル

気ままに

Blender 球体が透明容器の中で膨らむアニメーション

2024-11-18 | 日記

Blender  球体が透明容器の中で膨らむアニメーション

11月7日には今回と似た動画を作っている。「Blender  透明容器に一杯に膨らむアニメーション」という題である。その時はジオメトリノードを使ってドーナツ型で作った。今回は似てはいるが制作方法は違う。パーティクルシステムで作った。透明な立方体に球体がだんだんと大きくなって詰まってしまう・・・という動画である。

制作過程

Cubeを追加してすぐにパーティクルプロパティに入る。表示方法をワイヤーフレームにした。今回はジオメトリノードは一切使わない。パーティクルシステムでどんどんと設定していった。数20、開始フレーム1、終了1、寿命250。ソースを開いて放射源を「ボリューム」にした。そうすると立方体の内部からパーティクルが発生する。分布は「ランダム」。速度のノーマルは0。

     

 次はパーティクルをオブジェクトのICO球にしたい。ICO球に細分化もかける。

     

Cubeを選択し直し、レンダリング方法をオブジェクトにして、対象をICO球にした。まだこの時点のICO球はインスタンスオブジェクトなので実体はない。したがって物理演算はかからない。これを実体化するためには、Ctrl+Aから「インスタンスを実体化」しなければならない。この操作でICO球がオブジェクトになった。

 ここでもう不要となった最初のCubeとパーティクル大元のICO球は削除した。今度は20個のICO球だけになった。

     

このICO球をいろいろな角度から見て、重なり具合を調べる。重なっていると次に物理演算でクロスを使うときにエラーが起こるというので、選んで直した。これが終わったら、この球達を統合した。そしてクロスのゴムに設定。圧力をとりあえず200とした。(後でこの数値は調整する)

クロスの項目の中で、シェイプの「収縮係数」が大事である。「+」は縮む、「-」は膨らむ。後で、圧力と収縮係数を使ってアニメーションのキーフレームを打つ予定のところである。

取り敢えず収縮係数を―0.9とし重力0にして再生してみた。球体が膨らんだ。

     

メッシュが一部重なったところがあったので「セルフコリジョン」にチェックを入れた。これで中身の球体の動きはできた。

  外容器の作成 

また新たにCubeを入れる。上の20個の球体が入る大きさに大きくする。次に物理演算のコリジョンを選ぶ。ここで1つ注意が要る。コリジョンは面の表面に機能するという。Cubeの中側で物理演算(コリジョン)を使いたいので、この立方体の面をひっくり返す必要がある。最初は外向きの面になっていた。

     

面の向きにチェックを入れた後、ALT+Nから「反転」を選ぶ。そうすると面の向きが赤くなった。面が裏返ったという証拠である。

        

             こうして外側の容器の設定は終わった。

 さて、もう一度球体の設定を見直す。球体(もう統合してある)を選び、物理演算クロスの圧力を600に直した。先ほどよりも大きく膨らんだ。コリジョンの品質も高くしておいた。

マテリアル設定

シェーディングに行き次のようにノードを組んだ。これは球のノードである。

      

容器のCubeにもマテリアルを付けた。

     

 

アニメーションを付ける。

アウトライナーでICO球を選択。物理演算をクリックし、1フレーム目には圧力0、収縮係数を0でキーフレームを打つ。タイムラインを進めて、今度は圧力600、収縮係数を-0.9でキーフレームを打った。再生して確認をする。 

     

この後カメラ設定、ワールド設定にHDRI画像を使っておわりに近づいた。画像レンダリングをした結果が次の写真である。

     

出力はCyclesで行った。時間がかかりました。「球体が透明容器の中で膨らむアニメーション」をご覧ください。

Blender 球体が透明容器の中で膨らむアニメーション


最新の画像もっと見る