#【前提】
・Unreal Engineのバージョンは4.6.1として説明します。
・Windows版のパッケージ化を主として説明しています。
・エラーの回避
通常の製品版のUE4のエディタから、Substanceのマテリアルを含んだプロジェクトをパッケージ化すると
以下のエラーが出力されSubstanceのマテリアルは無効になります。
これを回避する方法を記述するのがこのブログの趣旨です。
※著者の経験からの手順ですので正解かどうかはわかりません。
#【準備】
1)UE4のエンジンビルド環境を構築する
2)Substance プラグインを入手する
1)UE4のエンジンビルド環境を構築する
エンジンのビルド環境構築に関しては、幸いにして、詳しい解説が
ヒストリアさんのブログにありますので、こちらをご参照してください。
ヒストリアさんのブログを参考に
「7. Setup.batを実行」までを実行してください。
2)Substance プラグインを入手する
こちらで入手可能です。
http://www.allegorithmic.com/substance-ue4
Substanceのプラグインの入手にはallegorithmicさんのアカウントが必要です。
このプラグインを使用するということはallegorithmicさんにアカウントをお持ちかとは思いますが。
Steamなどで製品を購入している場合は、アカウントがない場合がありますので、ここで作成してください。
アカウントの作成にはメールアドレスが必要です。
※余談ですが。
Steamで購入してもallegorithmicさんでアカウントを作成すると、allegorithmicの製品の正式なライセンスコードがallegorithmicさんから提供されます。(私はこの方法です)
#【ビルド準備】
プラグインをダウンロードしたら
エンジンをビルドする以下のフォルダに、プラグインをすべて放り込みます。
ダウンロードして解凍後のこれを。
↓ここにすべて放り込みます
Engine\Plugins配下にSubstanceのフォルダがコピーされます。
すべてを放り込んでコピーしたら。
ビルド用のソリューションファイル等を作成します。
作成は、「GenerateProjectFiles.bat」を実行することで可能です。
ヒストリアさんのサイトの、ブログにも注意点がありますが。ここや、エンジンビルド中に何らかの失敗が発生する場合、ビルドするファイルの格納フォルダが深すぎたり、フォルダ名に日本語が含まれていたりする場合があります。その場合は、フォルダを浅い位置、たとえばd:\ue4.6等にすると成功するかもしれません。
また、過去にエンジンをビルドしたことのある環境で再ビルドする場合は
UE4.v12
UE4.sdf
UE4.sln
などのファイルは 必ず削除してから「GenerateProjectFiles.bat」を実行してください。
↑この様な感じになれば、Substanceのプラグイン込みのビルド用のプロジェクトファイル、ソリューションファイルが作成されます。
#【ビルド】
ソリューションの以下の場所に__Substance__があればプロジェクトの作成は成功です。
ビルドは2回行います。
1回目は、ヒストリアさんのブログの「9.ビルド」を実行しエディタを生成します。
http://historia.co.jp/archives/1327
2回目はパッケージ化用の実行ファイルを作成します。
パッケージ化用のビルドを行うためソリューションの構成をshippingにします。
#【ビルド完了】
この様になれば完了です。
#【パッケージ化開始】
Engine\Binaries\Win64の配下に以下の実行ファイル(UE4Game-Win64-Shipping.exe)が作成されているはずです。
最初の起動時、シェーダのコンパイルが大量に入るので起動に時間がかかります
Substanceのマテリアルを含むプロジェクトを開きます。
手順は以上になります。
##【余談】
実は、SubstanceプラグインのUE4エディタでの有効化の手順もご存じない方のために、以下に簡単に手順を説明します。
上記のSubstanceプラグインの入手
及び
【ビルド準備】で説明しているプラグインのコピーを__製品版__のUE4のエンジンフォルダに放り込んだら
エディタを起動し。
下記のプラグインを有効にします。
あとは__sbsar__ファイルをドラッグ&ドロップすれば、インポーターが起動します。
これで、UE4のエディタ上でSubstanceのマテリアルが使用できるようになりました。