Version: Unity 6.0 (6000.0)
言語 : 日本語
カスタム頂点ストリームを使用したパーティクルシステム GPU インスタンシングの例
ビルトインレンダーパイプラインのランタイムでのシェーダーの置き換え

ビルトインレンダーパイプラインの Autodesk Interactive シェーダー

Autodesk Interactive シェーダーは、Autodesk® 3DsMax や Autodesk® Maya で利用可能な Interactive PBS シェーダーを Unity で使用できるように再現したものです。

これらのソフトウェアからエクスポートされた FBX を Unity がインポートするとき、その FBX に Interactive PBS シェーダーを使ったマテリアルが含まれているかどうかを確認します。含まれている場合は、Unity はこれらのマテリアルを Autodesk Interactive マテリアルとしてインポートします。Autodesk Interactive マテリアルのプロパティは、オリジナルの Interactive PBS マテリアルと同じです。また、外観やライトへの反応も似ています。

Autodesk® Maya や Autodesk® 3DsMax で見るものと、Unity で見るものには若干の違いがあります。

Autodesk® Maya ビューポートの Interactive PBS マテリアル。
Autodesk® Maya ビューポートの Interactive PBS マテリアル。
FBX からインポートした同じマテリアルを Unity で見た場合。
FBX からインポートした同じマテリアルを Unity で見た場合。

Autodesk Interactive マテリアルの作成

Unity が、互換性のある Autodesk シェーダーを持つ FBX ファイルをインポートすると、Autodesk Interactive マテリアルを自動的に作成します。Autodesk Interactive マテリアルを手動で作成したい場合は、以下のようにします。

  1. メニューから新しいマテリアルを作成します (メニューで Assets > Create > Material を選択します)。

  2. マテリアルの Inspector で Shader ドロップダウンをクリックし、Autodesk Interactive を選択します。

プロパティ

Autodesk Interactive シェーダーのプロパティは、Roughness を除いて、スタンダードシェーダーのマテリアルプロパティと同じように動作します。

その他のすべてのプロパティの詳細については、マテリアルパラメーターを参照してください。

Autodesk_Interactive_Material
Autodesk_Interactive_Material
プロパティ 説明
Rendering Mode Unity がこのマテリアルをどのように表示するかを制御します。OpaqueCutoutFadeTransparent のいずれかを選択します。

このプロパティは、スタンダードシェーダーと同じように機能します。詳細はレンダリングモードを参照してください。
Main Maps Albedo マテリアルの色を定義します。

このプロパティを制御するために、テクスチャを割り当てることができます。そのためには、プロパティ名の左側にあるテクスチャピッカーボタンを使用します。

詳細は、アルベドを参照してください。
メタリック サーフェスのメタリックに見える度合いを定義します。

このプロパティを制御するために、テクスチャを割り当てることができます。そのためには、プロパティ名の左側にあるテクスチャピッカーボタンを使用します。

詳細は、Metallic モード: Metallic パラメーターを参照してください。
Roughness このマテリアルの表面の粗さまたは滑らかなさを制御します。

このプロパティを制御するために、テクスチャを割り当てることができます。そのためには、プロパティ名の左側にあるテクスチャピッカーボタンを使用します。
Normal Map このマテリアルの法線マップを接空間で定義します。

このマテリアルに法線マップを割り当てるには、プロパティ名の左側にあるテクスチャチャピッカーボタンを使用します。

法線マップの詳細については、法線マップを参照してください。
Height Map このマテリアルが使用するハイトマップを定義します。

このマテリアルにハイトマップを割り当てるには、プロパティ名の左側にあるテクスチャチャピッカーボタンを使用します。

ハイトマップの詳細については、ハイトマップを参照してください。
オクルージョン このマテリアルが使用するオクルージョンマップを定義します。

このマテリアルにオクルージョンマップを割り当てるには、プロパティ名の左側にあるテクスチャチャピッカーボタンを使用します。

オクルージョンマップの詳細については、オクルージョンマップを参照してください。
Detail Mask このマテリアルが使用する詳細マスクを定義します。

このマテリアルに詳細マスクを割り当てるには、プロパティ名の左側にあるテクスチャチャピッカーボタンを使用します。

詳細マスクの詳細については、セカンダリマップを参照してください。
Emission マテリアルのサーフェスが発するライトの色と強度を制御します。

詳細は、スタンダードシェーダー発光を参照してください。
Tiling このマテリアル上のすべてのテクスチャの XY の UV タイリングを制御します。
Offset このマテリアル上のすべてのテクスチャの XY の UV オフセットを制御します。

Unity は XY の値を使用して、テクスチャ空間でマテリアルのサーフェス全体のテクスチャをオフセットします。
Secondary Maps セカンダリマップ (またはディテールマップ) は、上記のメインテクスチャの上に2枚目のテクスチャを重ねることができます。

このマップの 2 番目のレイヤーにより、マテリアルのテクスチャを小さいスケールで繰り返し、近くで見たときに細部まで鮮明なインプレッションを実現できます。

詳細は、セカンダリマップを参照してください。
Detail Albedo x2 テクスチャピッカーボタンを使って、2 つ目のアルベドカラーマップをこのマテリアルに適用します。
Normal map テクスチャピッカーボタンを使って、このマテリアルに2 つ目の法線マップを適用します。

法線マップの強度は、このプロパティの横のフィールドに 0 より大きい値を入力して制御できます。
Tiling このマテリアルのすべてのテクスチャの XY の UV タイリング
Offset このマテリアルの補助テクスチャの XY の UV オフセット
UV Set このメッシュに複数の UV 座標セットが含まれている場合、これを使って補助テクスチャを主要テクスチャとは異なる UV セットに割り当てることができます。
Forward Rendering Options Specular Highlights このチェックボックスを有効にすると、このマテリアルにスペキュラーハイライトを与えます。
Reflections このチェックボックスを有効にすると、このマテリアルに反射サーフェスを与えます。
Advanced Options Enable GPU Instancing このチェックボックスを有効にすると、Unity は、同じジオメトリのメッシュとマテリアルを可能な限り一度にレンダリングします。これにより、より速くレンダリングできます。

Unity は、異なるマテリアルがある場合や、ハードウェアが GPU インスタンシングに対応していない場合は、メッシュを一括してレンダリングすることはできません。例えば、オブジェクトのピボットに基づくアニメーションを含むゲームオブジェクトを静的バッチ処理することはできませんが、GPU はそれらをインスタンス化することができます。

詳細は、GPU インスタンシングを参照してください。
Double Sided Global Illumination これを有効にすると、グローバルイルミネーションを計算するときに、ジオメトリの両面を考慮するようライトマッパーマッパーに指示します。

これを有効にすると、Unity は裏側を描画したりライトマップに追加したりしませんが、他のゲームオブジェクトが裏側を検出したときには有効として扱います。

プログレッシブライトマッパーを使用すると、ゲームオブジェクトの裏側は、表側と同じ発光とアルベドを使ってライトを反射します。
カスタム頂点ストリームを使用したパーティクルシステム GPU インスタンシングの例
ビルトインレンダーパイプラインのランタイムでのシェーダーの置き換え