この記事は KLab Creative Advent Calendar 2019 の 6日目の記事になります。
こんにちは。クリエイティブR&Dグループ所属のsasaと申します。
セクション内では主にVFXを担当しており、現在はHoudiniというツールの技術検証・研鑽・実践を行っています。
「R&Dグループってなんぞや?」という方はコチラ↓
当クリエイティブブログでは今までHoudiniのイントロダクション、Houdiniの基礎チュートリアル、HoudiniのPyro基礎チュートリアルを寄稿してきましたが、今回は11月16日に開かれたプロシージャル祭というイベントで私が展開した表題のエフェクトTipsをご紹介したいと思います。
※プロシージャル祭とは
プロシージャル祭とは、プロシージャルや非破壊な作業フローを紹介し合う集いのことです。とはいってもガチガチのお堅い会というわけではなく、「自分の気に入ってる大体非破壊的でフットワークの軽いフローを紹介する場」位の感覚です。
私が今回紹介する内容も、手癖でよくやる大体非破壊でフットワークの軽いフローの紹介という感じです。
下記画像が今回Tipsとして紹介するパーティクルワイプ等の画像や作業フローのスチルになります。
ベースのテキストやパスのディテールや動きはAfterEffcetsとそのプラグインのElement3Dで作成し、そのメッシュを書き出してHoudiniやRealFlowでエフェクトを付けていきます。元のテキストやパスを差し替えても、各段階の中間データを出し直すだけで他はほぼ調整しなくても大丈夫な作業フローとなっています。
動画Tipsになりますので、ブログ上では下記テキストで要点等の捕捉を行いたいと思います。
こちらが今回の完成形及びTips動画となります。各チャプターへのショートカットは動画の説明欄に記載しています。
今回は基礎的なチュートリアルではないので動画内で細かくツールや機能を説明していないので、主に使うツールを下記に記載します。
AfterEffects
コンポジットや、プラグインのElement3Dを使ってテキストを3D化→その3D化したテキストのアニメーション作りに主に用います。
Houdini
メインとなるワイプのパーティクルエフェクトの作成~レンダリングまで及び、流体メッシュのレンダリングに用います。
RealFlow
流体メッシュやサブのパーティクル素材作成に用います。
Krakatoa
サブパーティクルのレンダリングや更に追加のパーティクル素材の操作・管理・レンダリングに用います。3dsmaxのプラグイン版を使用しています。
プロシージャル祭での個人の持ち時間が20分弱だったので、動画はタイトな構成になっています。ですので、追加で別途説明をした方が良さそうだと感じた箇所を下記に文章でまとめました。
Tips動画を鑑賞中、必要に応じて適宜ご確認いただければ幸いです。
この動画を発表したプロシージャル祭自体が、自分の好きな非破壊フローやツールを発表する会ですので、上述していますがサードパーティープラグインや様々なツールを普通に使用しています。
HoudiniとAfterEffects以外の主な有償ツールは、AfterEffectsプラグインのElement3D、流体ツールのRealFlow、粒子管理に特化した3dsmaxプラグインのKrakatoaやフルイドプラグインのFumeFXです。
今回のフローは、サードパーティープラグインのElement3Dが肝になっています。このプラグインは、AfterEffectsのメジャーなプラグインなのでAfterEffectsユーザーの多くが既知・使用しているものかと思います。実務で遭遇・使用する機会の多いプラグインですので、非AfterEffectsユーザーの方でも知識として知っておくと、有用な場面があるかと思われます。
Element3Dを使用する際は、同じ会社が販売している実戦レベルのマテリアルプリセットの「ProShader2」、高画質IBL用テクスチャ集である「BackLight」を一緒に購入する事をオススメします。
Element3Dは仕様上、フェース毎にscatterできるようにジオメトリが構成されているため、3DCGツールで書き出したOBJファイルを読み込むと頂点結合がされていなかったり、法線やUVが疎らだったりと、大概の3DCGツールでは少し扱い辛い形で読み込まれます。場合によっては、書き出したOBJファイルをリダクションしてから実際の作業に移ると良いでしょう。
ブーリアンの範囲を厳密にジオメトリの範囲等で指定してはいませんが、Element3Dで作成される標準スケールは大体決まっているので、今回のような場合ではそこまで問題になりません。
ブーリアンでジオメトリをカットして、断面のみ抽出してそこからパーティクルを出すというのは、シンプルですが手堅いフローです。シンプルな作業フローというのは大概、強固で確実で汎用性が高いので、それで充分な速度と結果が得られる場合は私は重宝しています。
この工程もHoudiniでやっても良いのですが、動画の後半でも解説している通りRealFlowはこの手の小規模流体の作成が非常に得意なので使用しています。
今回のケースでは、シミュレーションの軽さもRealFlowの利点ですが、この手の流体に付き物のメッシュのピクつきがほぼ起こらず、試行錯誤で先の読めない状態には滅多にならないので、小規模流体制作で確実に頼れるツールとして私はRealFlowを重宝しています。
Krakatoaは、パーティクルの操作・管理・レンダリングに特化しているツールです。ニッチなツールだけあって、億単位のパーティクルを軽々と扱えます。RealFlowで作成したパーティクルの再利用もKrakatoaなら容易なので使用しています。
上述した通り、Krakatoaは億単位のパーティクルを軽々と扱えるのでこの手のイメージエフェクトを手早く確実に作成できます。紹介しているFumeFXとの連携は昔から強力なフローです。とはいえ、この工程もHoudiniでも行えます。Krakatoaを使用している理由は、今回のケースだと特化ツール故の速さと確実性が有用だと判断したからです。
Houdiniでアセットを仕込むとデータ管理や再利用が圧倒的に楽なので、Houdiniに読み込んでレンダリングしていますが、別にレンダリングするだけなら他のツールでも大丈夫ですし何ならRealFlowからOBJ連番で書き出して、Element3DにOBJ連番を読み込んでAfterEffectsで直に調整することも可能です。どのツールや手法を使うかは、状況や環境で適宜選択すると良いでしょう。
動画内でも説明していますが、コンポジットでは割と一般的な調整しかしていません。
テキストの消し込みも、パーティクルに合わせて大雑把にマスクを切っているだけです。消し込み用のパーティクル素材の質と量が十分ならこのようなマスク処理だけでもビジュアルの整合性が取れるので、作業時間や無駄な手間を削減できます。
プロシージャル祭での個人の持ち時間が20分弱なのと、こちらは発表内容とは別物なので、HUDやモーショングラフィックスの解説はボーナストラック扱いで切り分けています。この手の表現や手法はそれこそ星の数ほどあって、何が正解かというのは難しい話なのですが、共通して言えることは、主たる要素を決めて、見る人の視線をしっかりと誘導するようにデザインや構図・アニメーションを作る、と良いといった所でしょうか。これは、イラストや映像でも言える事なので、ジャンル関係なく普遍的に気にすべき要素と言えるでしょう。
お疲れさまでした。如何だったでしょうか? 少しでも皆様の様々なツールの勉強・発見のお役に立てたのなら幸いです。
プロシージャルや非破壊というと、Houdiniの代名詞のように思われがちですが、こういった考え方は他のツールでも作業の高速化や作業サイクルの効率化に有用です。
作業を効率化するということは、その分浮いた時間を、クオリティアップや、試行回数を増やしてクオリティを詰める機会に繋げることができるということです。
本Tipsをご自身の作業の効率化や高速化、何かしらのヒントや知見として活用して頂けますと幸甚に存じます。
また、「こういう事を知りたい」「こういう内容を記事に取り上げてほしい」といった要望も募集中です。何かございましたらコメントフォームの方へ書き込みをお願いいたします。
最後までお目通し頂きありがとうございました。
KLabのクリエイターがゲームを制作・運営で培った技術やノウハウを発信します。
合わせて読みたい
KLabのクリエイターがゲームを制作・運営で培った技術やノウハウを発信します。