MRが楽しい

MRやVRについて学習したことを書き残す

BlenderからUnityへ引き継げるマテリアルの情報を確認する

本日は Blender と Unity の小ネタ枠です。
BlenderからUnityへ引き継げるマテリアルの情報を確認します。

BlenderからUnityへ引き継げるマテリアルの情報

ベースカラー

Blenderでのマテリアルの[ベースカラー]は Unity での Albedo のカラーとして取り込まれます。

Blenderでの設定
f:id:bluebirdofoz:20200708225334j:plain

・Unityでの取り込み結果
f:id:bluebirdofoz:20200708225347j:plain

ただし、カラーのアルファ値については引き継げません。
また[メタリック]、[スペキュラー]、[粗さ]の値も引き継ぐことはできません。

Blenderでの設定
f:id:bluebirdofoz:20200708225359j:plain

・Unityでの取り込み結果
f:id:bluebirdofoz:20200708225411j:plain

テクスチャの参照

ベースカラーとノーマルマップのテクスチャ参照については Unity に引き継ぐことができます。
参照を設定するため、マテリアルのノードを有効化して[サーフェス]を[プリンシプルBSDF]に変更します。
ベースカラーに[画像テクスチャ]の参照を設定しました。

Blenderでの設定
f:id:bluebirdofoz:20200708225423j:plain

・Unityでの取り込み結果
f:id:bluebirdofoz:20200708225434j:plain

テクスチャ読み込み時の注意事項

fbx ファイルに含まれるのはテクスチャの参照のみで、テクスチャファイル自体は含まれません。
このため、fbx ファイルの取り込み前にテクスチャファイルを Unity プロジェクトに取り込んでおく必要があります。
テクスチャのファイル名が一致していれば、参照ディレクトリの構成に関係なく参照されます。
f:id:bluebirdofoz:20200708225445j:plain

テクスチャ参照を設定していてもベースカラーの設定は引き継がれます。
f:id:bluebirdofoz:20200708225458j:plain

ベースカラーとテクスチャの色情報が乗算されてしまうので、テクスチャの色合いをそのまま出力したい場合は、必ず[ベースカラー]を白(R:255,G:255,B:255)にしておく必要があります。
f:id:bluebirdofoz:20200708225508j:plain

ノーマルマップの参照

テクスチャのノーマルマップの参照を引き継ぐ場合は、[ノーマル]の項目に[ノーマルマップ]を設定します。
ノーマルマップの[カラー]として[画像テクスチャ]の参照を追加します。

Blenderでの設定
f:id:bluebirdofoz:20200708225519j:plain

・Unityでの取り込み結果
f:id:bluebirdofoz:20200708225530j:plain

ノーマルマップのテクスチャもベースカラーと同様に予めインポートしておく必要があります。