【Blender×AfterEffects】Blenderでモデリングした3DをAfterEffectsのアドバンス3Dで読み込む

ついに来ましたーーー!AfterEffects2024!!!パチパチパチ
3Dモデルの読み込みには、外部の有料プラグイン「Element3D」を経由していましたが、ついに3DモデルをそのままAfterEffectsに読み込めるようになりました!

Blenderでモデリングした3Dのインポートを試してみましたのでメモを残します。

スポンサーリンク

環境

OS:Windows11
Software:Adobe AfterEffects v24.1、Blender 3.6

インポートできる3Dモデル

ファイル形式
ブログを書いている時点では、GLB及びGLTF形式の3Dモデルのみが読み込める対象となっています。
Adobeの記事によると、β版でOBJ形式の読み込みができると記載されておりますので、バージョンアップでOBJも適用されると予想されます。
※余談ですが、Element3DではOBJ形式の3Dモデルを読み込みます。

2024年3月28日追筆
obj形式での読み込みができるようになりました。しかしながら、複数ファイルの読み込みは再現できませんでした。objの複数ファイル読み込みはElement3Dで補完していくのが良いと思われます。

ファイル名
3Dモデルのファイル名についてです。結果的に、日本語名ファイルの読み込みは出来たのですが、モデルが表示されなかったりと挙動が不安定の時がありました。(原因が違うところにあるのかも・・)
ファイルの命名は日本語でもよいですが、特段必要がなければ無難な英名にした方が良いかもです。

アドバンス3Dで再現できなかったこと

グラスBSDF
水しぶきのモデルにグラスBSDFを適用して書き出し、AfterEffectsに読み込んだところ、下図のようにテクスチャの再現ができませんでした。(予想はしていましたが、伝播やIORによる複雑な光の屈折はBlenderでやるべきと笑)

ただし、Blender上でアルファを下げることにより、AfterEffects上で半透明として読み込むことはできました。

アニメーション
下GIFのようなアニメーションを付帯したモデルを読み込んだ際に、アニメーションの再現はできませんでした。

2024年6月追記
バージョン24.5のリリースにより、GLBまたはGLTFモデルに組み込まれたアニメーションにアクセスできるとリリースが発表されました!アップデートされた内容を検証したら、改めて記事にしたいと思います。
https://helpx.adobe.com/jp/after-effects/using/whats-new.html

バージョン24.5でモデルからアニメーションを読み込んでみた記事になります。アドバンス3D上でアニメーションを読み込む方法はこちらの記事をご参照ください↓

アニメーションを3DモデルとしてAfterEffects上で再現する場合は、外部プラグインのElement3Dを使用すると簡単に実装できます。
Element3Dの場合は、オブジェクト形式をOBJにして書き出します。
アニメーションは、OBJの連番ファイルとして書き出されますので、連番の一番最初(アニメーションスタート)のファイルをElement3Dで読み込みます。

Element3DのScene Setupを開き、File > Import > 3D Sequence と選択します。

ファイル選択ウィンドウが開きますので、連番の一番最初のOBJファイルのみ選択してOpenをクリックします。

Element3DにOBJを読み込むと、ファイル名の後ろにアニメーションのフレーム数が表示されます。

Scene Setup画面をOKで閉じ、AfterEffectsのタイムラインで再生をするとアニメーションが正常に動きます。
<参考サイト>
Video Copilot Baked Animation Sequences
https://www.videocopilot.net/docs/element/importing_3d_objects_into_element_3d/baked_animation_sequences/

Element3Dにマテリアルを適用したい際は、こちらの記事をご参照ください。

前述のように、β版AfterEffectsではOBJファイルのインポートが開発されています。PNG連番の複数ファイル読み込みのようにOBJの複数読み込みも可能になるのではと期待しています。

Blenderで作った3DモデルをAfterEffectsに読み込む方法

こちらの酒瓶をモデリングしてAfterEffectsに読み込ませてみました。

より複雑な形状やマテリアルのオブジェクトがどのように読み込まれるか?の検証は出来ていませんが、このシンプルな酒瓶データでもいくつか躓いたポイントがありましたので、Blender側で対応した設定を列挙します。

①ミラー等のモディファイアーが反映されない。
モディファイアーは適用するか、書き出し時にモディファイアーをメッシュに変換する項目にチェックを入れる事で回避できます。
▼書き出し時のモディファイアーチェック箇所

②AfterEffectsにインポートしてもマテリアルが適用されない。
グラスBSDFは前述のように再現できませんでしたが、今回用意した酒瓶のマテリアルの場合、スマートUV投影をすることでマテリアルの反映ができました。
UV展開しなくても読み込めたりするので、なぜこの現象が起きるのか深堀はしておりませんが、マテリアルが反映しない時はUV展開してみるのも手かもです。。。
スマートUV投影:編集モード > 全選択(A) > U > スマートUV投影
注:複雑な形状の場合、スマートUV投影ですと位置がずれたりします。

③カーブのオブジェクトがなん
カーブのままでも問題なく表示されたのですが、もし、カーブのオブジェクトがおかしい場合は、メッシュ化してみると良いかもです。
オブジェクトモード > オブジェクト > 変換 > メッシュ

AfterEffects側の作業

Blenderで書き出したGLBファイルをプロジェクトに読み込みます。
(これだけで感動!笑)

新規コンポジション > 3Dレンダラーのタブのレンダラーを「アドバンス3D」にしてOK

おや?無効のテキストエリアに「ライト透過」と明記してありますね・・・・・
透明マテリアルの検証をするまでもなかったのかも・・・(泣)

作成したコンポジションのレイヤーにGLBを配置すると・・・・

うおっ!感動!

レンダリングの解像度は、レンダリングオプションで変更する事ができます。

解像度を高めるとその分グラボが走りますので、作業中は低めをお勧めします。。

次の記事では、AfterEffects側で設定できる環境光や3D×2Dの相互運用性を試した内容を書きたいと思います。
つづきの記事はこちら↓

タイトルとURLをコピーしました