執筆バージョン: Unreal Engine 5.5
|
今回は、UE5.5で追加されたインターチェンジ フレームワークをご紹介したいと思います。
(参考:Unreal Engine 5.5 リリース ノート、公式ドキュメント)
インターチェンジ フレームワークとは
アセットのインポートや再インポート(将来的にはエクスポートも含む)を、より簡単かつ柔軟に行うための新しい仕組みです。
このフレームワークを活用することでアセットのインポートプロセスをカスタマイズし、アセットのインポートを効率化できます。
UE5.5では以前のインポート設定と置き換わる形で実装されています。
※アセットのインポートは実際の制作に使用可能ですが、レベルのインポートはベータ版という扱いになっています。
FBXをインポート
実際に以前とどのように変わったのかFBXのサンプルとしてキャラクターのキーボー(スケルタルメッシュ)をインポートしてみます!
デフォルトの設定の場合、インポートするデータに必要な設定が、項目ごとに整理されており分かりやすく表示されています。

また、インターチェンジプレビューボタンを押すと、☑項目がつき何がインポートされるのかが見てわかるようになっています。
今回は、スケルトンとスケルタルメッシュにチェックボックスがついています。

インポート押すと……インポートされました!

インターチェンジフレームワークをカスタマイズして使ってみる
先ほどはデフォルトで設定されていたものでしたがEpic Gamesスタッフ様によるチュートリアルを参考に、BPを使ってテクスチャのインポートをカスタマイズしていきます。
今回は、特定の命名規則に基づいてテクスチャの圧縮設定を自動で変更する方法を解説します。
「テクスチャの名前の末端に_Mがついていたら、自動的にMasksの圧縮設定にしてしてくれる」カスタムをしてみます。
BPを組む
任意のフォルダにInterchange Blueprint Pipelineを追加します。

以下のような流れでノードを構築します。

・Event ScriptedExecutePipelineを追加します。
・Get NodesのClass Nodeは、テクスチャをインポートしてTexture2Dアセットに変換するInterchangeTexture2DFactoryNodeを選択します。
・Get Display Labelでテクスチャの名前を取得します。
・Ends Withで名前が”_M“で終わるかどうかを取得します。
(Search CaseをCase Sensitiveに変更することで大文字と小文字を区別してくれます。)
・Branchで_MがTrueの場合、Cast To InterchangeTexture2DFactoryNodeでキャストします。
・Set Custom Compression SettingsnのAttribute Valueを変数[TC_Mask]にします。
デフォルトの値を2にします。これは圧縮設定に対応する列挙型のインデックス2がMasksのためです。

カスタマイズしたものを設定する
最後にカスタマイズしたものを設定していきましょう。
Project Setting>Engine-Interchangeを開きます。
インポートダイアログとパイプライン設定を表示するために☑をつけます。
また、TexturesのPipelinesに先ほど制作したInterchangeBPをセットします。

インポートする
今回はキーボーをメタリックにするマスクを用意しました。
※ゲームメーカーズアセットのフォルダにはマスクは含まれておりません。
早速インポートしてみます。
自分で作ったCustomTexturesPipelineを選びます。
TC_Maskの値が2に設定されていることを確認して下さい。

インポートされたテクスチャを見てみると……
設定は何もいじっていませんが圧縮設定がMasksに変更済みになっています!

金色のキーボーになりました。

インターチェンジ フレームワークは今回紹介したカスタマイズ以外にも、様々な用途に応用できます。
公式ドキュメントにはさらに詳細な情報が記載されているので、ぜひ自分好みのフレームワークを作成してみて下さい~