Modo Unityのマテリアルインポーター

Modo Material Importerは、Unityで標準のマテリアルをセットアップするUnityプラグインであり、その設定がModo。スクリプトがプロジェクト内で実行可能な一致するテクスチャを見つけられない場合、Unityプロジェクトの外部に保存されているテクスチャファイルを自動的にインポートします。

Material Importerのインストール

プラグインは、 Unityアセットストア

Unityでプロジェクトを作成した後、というフォルダーを作成しますEditorの中にAssetsプロジェクトのフォルダに移動し、スクリプトをコピーします。プロジェクトを開くと、インターフェースの下部にあるマテリアルインポータースクリプトが表示されます。 Assets > Editor

Material Importerの使用

エクスポートした後.fbxそして.xmlからのファイルModo、それらをAssets Unityプロジェクトのフォルダー。インポーターは自動的に.xmlとともにエクスポートされるファイル.fbxからのファイルModo、一致するファイル名に基づいて。

もしどちらか.fbxまたは.xmlファイルが更新されると、プラグインは自動的にマテリアル設定を適用します。

マテリアルの命名とテクスチャ検索のためのメッシュの通常のUnity設定が尊重されます。インポートしたものを選択して、これらを確認できます.fbxファイルと開くInspector Unityインターフェイスの右側にあるタブ。

インポーター設定

スクリプトには2つのグローバルオプションがあります。これらを開くには、 .xmlからエクスポートされたファイルModo Unityのインスペクターで。のInspector画面の右側にタブが表示されます。これらのオプションはすべてに影響します.xml選択したファイルだけでなく、ファイル

Always Update Material Values -このオプションを有効にすると、インポーターは常にマテリアル設定を再インポートします。無効にすると、既存のマテリアルの設定はそのまま残り、新しいマテリアルまたは欠落したマテリアルのみにXML値から設定が適用されます。

注意:  一致するテクスチャがプロジェクト内で見つかった場合、インポーターは外部テクスチャをインポートして置き換えません。

Always Reimport External Textures -有効にすると、プラグインは常に外部の場所からテクスチャを再インポートします。無効にすると、既存のテクスチャが見つかった場合、マテリアルはそれを使用します。新しいまたは欠落しているテクスチャのみが外部ソースからインポートされます。

スクリプトインスペクター

の選択.xmlアセットは、グローバル設定のオプションを含むカスタムインスペクターを表示します。

をクリックするForce Reimportボタンは、現在選択されているマテリアル設定を再インポートします.xmlファイル。

以下は、で定義されているマテリアルの現在の設定です。 .xmlファイル。これらは編集できません。情報提供のみを目的としています。

材料の値

マテリアルパラメータには次のルールが適用されます。

Transparency -現在、透過性はUnityでサポートされていませんModoにエクスポートされません。 .xmlファイル。ただし、通常のTransparent Amountテクスチャ効果Invert有効。Unityに一致させるには、 Transparent AmountテクスチャーAlbedoテクスチャ、ただしアルファチャンネルのみを出力するようにスウィズル。これを行うには、 Swizzlingそして設定ChannelAlpha。次に、Unityで、マテリアルのブレンドモードを手動で設定しますFadeまたはTransparent。チャンネルの入れ替えの詳細については、 チャンネルスウィズリング

注意:  Unityの標準シェーダーは、 Albedo不透明マスクのテクスチャ。

Color -マテリアルのベースアルベドカラーは、マテリアルにアルベドテクスチャが定義されていない場合にのみ適用されます。同様に、あなたの素材のEmissive色が適用されるのは、素材にEmissiveカラーテクスチャが定義されました。テクスチャが定義されている場合、これらは両方とも白に設定されます。

Normal Maps -に設定されたテクスチャNormalまたはDetail Normal外部の場所からインポートされた場合、インポート時に法線マップに自動的に設定されます。

Height/Emissive -テクスチャまたは値が存在するかどうかに応じて、他のほとんどの設定が正しく有効になります(Height視差マッピングの場合Emissiveライトマップベイク)。

エクスポートされたマテリアルとテクスチャ

ほとんどすべてのマテリアル設定とテクスチャがエクスポートされます:

Texture Wrap -Unityでは、すべてのメインテクスチャUVは、アルベドテクスチャのテクスチャ設定から派生します。同様に、すべての詳細テクスチャUVは、詳細アルベドテクスチャのテクスチャ設定から派生します。

エクスポートできますWrap U/Wrap Vからのテクスチャレイヤーの設定Modo Unityに。

ただし、Unityと同様に、 Modoのみを使用しますWrap U/Wrap Vアルベドおよび詳細アルベドテクスチャからサンプリングされた値。つまり、2.0のアルベドがある場合、 Wrap Uおよび2.0 Wrap V、ただし1.0の法線マップで、Unityにエクスポートすると、法線マップは2.0になります。 Wrap UそしてWrap Vアルベドテクスチャの設定。

Detail UV - Modoでは、すべてのメインテクスチャがメッシュの最初のUVセットを使用していると想定しています。これは同様に機能しますTexture Wrap値。アルベドテクスチャと詳細アルベドテクスチャのUVマップが異なる場合、 Modo詳細マップは2番目のUVセットを使用すると想定しています。マテリアルインポータースクリプトは、2番目のUVセットを使用するように詳細マップを設定します。

エクスポートされないもの

Unityは、値を取得する特定のテクスチャマップチャネルの設定をハードコーディングしています。

たとえば、Unityは、アルベドテクスチャにRGBチャネルのアルベド色とアルファチャネルの透明度が含まれていることを期待しています。で別のテクスチャを使用するように透明度を設定している場合Modoの場合、Unityには引き継がれず、代わりにアルベドテクスチャのアルファチャネルが使用されます。

マッチングModo Unityの期待に応えるテクスチャ

次の表には、値のグループと対応するテクスチャが含まれていますModo、Unityインポーターから取得します。各グループはUnityでハードコーディングされており、同じテクスチャに由来します。

テクスチャー

アルベドの色と透明度

Modo:アルベド

アルベド色:RGB

透明度:A

金属性と光沢

Modo:金属性

金属度:R

光沢:A

アンビエントオクルージョン

Modo:アンビエントオクルージョン

アンビエントオクルージョン:G

高さ

Modo: 高さ

高さ:G

詳細マスク

Modo:詳細マスク

詳細マスク:A

ヒント:  Modoのチャンネルスウィズリング機能を使用すると、テクスチャをModo Unityが必要とする方法。詳細については、 チャンネルスウィズリング