記事の目次

    今回は自然現象の中でもパワフルなもののひとつと言える「火山の噴火」を取り上げます。噴火の煙、溶岩の飛散など、動画にみられる様々な要素を組み合わせて構築していきます。

    ※本記事は月刊「CGWORLD + digital video」vol. 208(2015年12月号)からの転載となります

    TEXT_近藤啓太(ジェットスタジオ
    EDIT_小村仁美 / Hitomi Komura(CGWORLD)

    自然現象とエフェクトの密接な関わり

    16回目となる今回のテーマは「火山の噴火」です。数ある自然現象の中でも非常に激しいもののひとつに数えられる噴火ですが、実際に調べてみるとまさに最大規模のスケールでメカニズムが働き、噴火が起きていることがわかりました。詳細はいつものようにSTEP 01で紹介しているので差し控えますが、こういった「自然現象のメカニズム」はいつも驚きをもたらしてくれます。

    普段何気なく見ているような雨や火、風なども状況によって規模の差はあれど、調べてみると全ていつも同じロジックによって発生していることがわかります。こうした自然のしくみを応用した製品が生み出され、暮らしが便利になったり生活に多様性が生まれたりするなど、自然現象としてだけでなく、多くの事柄に影響を与えているのです。必殺技や魔法のような現実にない表現を求めるときも必ず自然現象がベースにあり、エフェクトの制作に関してもその恩恵は計り知れません。画づくりに困ったら自然から得るのが一番と思っている筆者にとって、「火山の噴火」はまさにその代表格の規模と派手さをもっていると言えます。ビバ地球! ビバエフェクト! ということで今回もどうぞお楽しみください。

    主要な制作アプリケーション
    ・Autodesk 3ds Max 2015
    ・Adobe After Effects CS6.0
    ・FumeFX 3.5.5

    STEP 01:「噴火のメカニズム」を考える ~日本に多くの火山がある理由とは~

    噴火の原因は大きく3つに分けられる

    噴火とは地球内部のマントルが溶け出し、マグマとなって地表に表出する現象です。日本は火山大国と言われており、全世界の約7%にあたる110もの活火山を有しています。このように大量の火山がある理由を紐解いてみると、噴火のメカニズムそのものに行き着きます。噴火の原因は様々ですが、代表的なものでは地球の表面を覆うプレート同士が沈み込むことで噴火を誘発する「海溝型」、プレートが割れ、隙間からマグマが発生する「海嶺型」、プレートよりさらに下部からマグマが継続的に供給される「ホットスポット型」の3つに大きく分けることができます。日本の周辺には噴火と密接に関わるプレートの溝が実に4種類も連なっており、それが日本に火山が多く集中する理由となっています。


    STEP 02:「噴火後の煙」を考える ~質感と煙の消失速度を合わせる~

    Optical Flaresでフレアの発光を再現する[Dissipation Strength]で
    煙の拡散スピードをコントロール

    STEP 02では噴火から発生する煙を再現していきます。噴火直後は大量の石や火山灰などが混ざって密度の高い黒煙が出るのですが、リファレンス動画では噴火から時間が経過しているためか、密度の低い薄い煙が多くみられました。この煙をFumeFXで制作していきます。煙の主な種類は2つ。火口内から発生している煙と画面手前にかかる煙です。火口内の煙はマグマの表面から常に発生していることを想定して、火口内部底のオブジェクトをベースに煙を発生させます。次に画面にかかる手前の煙はパーティクルベースで発生と消失のタイミングを調整します。これで噴火から発生する2つの煙が完成となります。


    火山の噴火直後は、石や火山灰などが大量に混ざるため、密度の高い黒煙が発生しますが、時間と共に水蒸気を主体とした薄く白い煙に変化していきます


    煙は、画面手前にかかる煙と、火口から発生する煙の2種類に分けられます


    火口から発生する煙は、火口の底のオブジェクトから発生させるように設定します


    画面にかかる煙はパーティクルベースで調整していきます。煙の質感は手前にある分ディテールがよく見えますので、[Vorticity]、[Turbulence Noise]の数値を上げ、ゴワッとした質感を目指します。さらに煙の消失をリファレンス動画と合わせるため、[Dissipation Strength]を使用して消失のスパンを短くします

    次ページ:
    STEP 03:「噴火の再現」を考える ~要素を分けて再現する~

    [[SplitPage]]

    STEP 03:「噴火の再現」を考える ~要素を分けて再現する~

    2種類の素材を組み合わせてマグマの噴出を再現する

    ここではメインとなる火山の噴火を再現します。今回、マグマの噴出を3DCG上で再現するために2つの素材を組み合わせることにしました。1つめは噴出の際に溶岩の芯となる素材。2つめは溶岩が拡散して飛び散る素材です。1つめの溶岩の芯とは、火口に溜まったマグマが吹き上がる際に見える最も密度が高い部分を指します。この芯をベースにもう1つの素材である溶岩の拡散も再現していきたいと思います。


    噴火の再現は、溶岩の芯になる素材と拡散する溶岩の素材の2つを組み合わせて表現します

    それでは最初に溶岩の芯の制作に入ります。芯の素材はFumeFXで制作します。シミュレーションはオブジェクトベースで行うため、芯の形状にモデリングしたオブジェクトをリファレンス動画を参考にそれぞれ配置し、スケールアニメーションによって芯の縮小を調整していきます。オブジェクトの配置とアニメーションが終わったらさっそくシミュレーションを行います。シミュレーションは煙のみで行い、不要な回転やうねりを司るパラメータを全て反応しないように設定しておきます。


    芯の素材はFumeFXで制作します。芯のオブジェクトを用意して適宜配置し、スケールアニメーションを付けます。また、不要なパラメータは全て反応しないように設定しておきます

    こうしてできた芯のシミュレーション結果が下の画像になります。なんだか少し頼りない画に見えますが、これを2つめの素材と重ねることで大きな威力を発揮します。


    芯のシミュレーション結果

    それでは次に2つめの素材である溶岩の拡散を制作していきましょう。この素材はパーティクルを用いて再現します。先ほど作った芯のオブジェクトをパーティクルの発生源として再利用し、後に噴火の芯と馴染みやすいように各パーティクルの発生タイミングをオブジェクトの動きと合わせていきます。その際、パーティクルのシルエットが山なりになるようSpeed BySurfaceオペレータを使用します。


    拡散する溶岩の素材にはパーティクルを使用します。先ほど作成した芯の素材を発生源とし、SpeedBy Surfaceオペレータにより自然な拡散になるよう調整していきます

    さて、溶岩の芯と同じ数のパーティクルイベントが準備できたら、次にパーティクルとして飛ばすためのオブジェクトを用意します。飛び散った溶岩は水飛沫と同じように、捉えどころのない有機的な形状をしています。そのような場合はBlob Meshを使用して複数のオブジェクトを繋げることで形を崩したオブジェクトを作成することができます。後はマテリアルの設定を加えて質感や色合いをリファレンス動画に合わせ、溶岩の拡散を再現していきます。こうしてできた2種類の素材をコンポジットソフト上で組み合わせ、溶岩の噴出を再現します。


    飛び散った溶岩の形状には、BlobMeshを適用します

    2つの素材を組み合わせた最終結果が下の画像です。芯が消えていく推移と溶岩の飛散タイミングを合わせるのが難しいですが、上手くいったときはしっかり互いが馴染んでくれるのでこれも1つの方法としてはありかなと思っています。


    2つの素材を組み合わせた結果

    STEP 04:「張り付く溶岩」を考える ~壁にぶつかる溶岩を再現する~

    張り付く溶岩はDeflectorの摩擦で再現

    最後のSTEPでは噴火の際、山に張り付き滑り落ちる溶岩を再現します。溶岩はその名の通り岩や砂が熱によって溶けた状態のものを言います。水よりも非常に粘度が高く、壁など障害物に当たるとくっついたりゆっくり零れ落ちる等の振る舞いを見せます。この振る舞いをシンプルに再現するには[UDeflector]を用いるのが良さそうです。


    UDeflectorを適用すると、対象オブジェクトを衝突判定用のオブジェクトとして使用することができます

    このツールで指定したオブジェクトは衝突判定用オブジェクトとして使用することができます。今回はこの機能を利用して、背景の火山モデルをパーティクルの衝突オブジェクトとして扱うようにしておきます。次に同機能パラメータ内の[Bounce]を0に、[Friction]を90%などパーティクルの衝突後に強い摩擦がかかるようにセッティングしておきます。準備が完了したら火山に張り付いてほしいパーティクルをピックアップし、イベント内に[Collision]オペレータを組み込めば山に接触した際、ゆっくりと滑り落ちるような動きをさせることができます。


    背景モデルにUDeflectorを適用し、[Bounce]を0、[Friction]を90%に設定します


    Frictionを高い値に設定すると衝突後に強い摩擦がかかるため、溶岩のパーティクルは衝突後、背景モデルに沿ってゆっくりと落ちていきます


    レンダリング結果

    完成

    「火山の噴火」いかがだったでしょうか。噴火のリファレンスをいろいろ見ていると、そのダイナミックさや恐ろしさを感じると共に、「地球が生きている」ことをしっかり再認識させられますね。




    Profile.

    • 近藤啓太(ジェットスタジオ)
      エフェクトを中心に映像制作をしております


    • JET STUDIO
      ゲーム、映画、遊技機映像など幅広く制作を行う、3ds MaxをメインツールとするCGプロダクション。ベトナムにも支社を構え、大規模な制作体制を採っている
      www.jetstudio.co.jp


    • イラストでわかる物理現象 CGエフェクトLab.
    • イラストでわかる物理現象 CGエフェクトLab.


      定価:3,000円+税
      サイズ:B5変型/フルカラー
      総ページ数:288
      ISBN:978-4-86246-395-1