ビューポート 2.0 の dx11Shader プラグインで使用するためにユーザ独自のカスタム シェーダを作成している場合、次のセマンティックと注釈がサポートされます。
サポートされるパラメータ注釈
dx11ShaderNode クラスは、パラメータの次の注釈を探し、作成時に関連情報を MUniformParameter クラスに送ります。
名前
|
タイプ
|
説明
|
UIOrder |
int |
でパラメータの順序を変更できます。これは特に、コンパイラから返されるパラメータの順序が常に FX ファイルの宣言の順序に従っているわけではないため便利です。UIOrder が最小のパラメータが AE の最上位に示され、UIOrder が増えると他のパラメータが追加されます。
|
UVEditorOrder |
int |
でテクスチャの順序を変更できます。UVEditorOrder が最小のテクスチャ パラメータが、最初にメニューに表示されます。
|
UIGroup |
string |
同じ UIGroup アトリビュートを持つすべてのパラメータが、集約可能な別のパネルに並べられ、そのラベルは UIGroup 値になります。パネルは、UIOrder 値が最小のグループ パラメータの位置に挿入されます。 |
オブジェクト(Object) |
string |
ライトのすべてのパラメータを定義できます。パラメータ レイアウト レベルで、パネルが既定で集約されることを除き、この注釈は UIGroup 注釈としてまったく同じように機能します。個別のオブジェクトごとにドロップダウン メニューが作成され、既存の Maya シーン ライトに簡単に接続することができます。
|
UIName |
string |
UI のパラメータの名前を変更できます。既定では、変数名が表示されます。 |
SasUiVisible UIType UIWidget
|
bool string string
|
UI での変数の可視性を制御します。2 つの文字列注釈の場合、値が「None」の場合に変数が非表示になります。これは UIType 注釈で現在認識される唯一の値です。
|
SasUiMin UIMin uimin
|
float/int (パラメータと同じ)
|
最小範囲値。
|
SasUiMax UIMax uimax
|
float/int (パラメータと同じ)
|
最大範囲値。
|
UISoftMin uisoftmin
|
float/int (パラメータと同じ)
|
範囲の最小スライダ値。UISoftMin より小さい値(ただし、指定されている場合は UIMin より大きい値)をパラメータの数値入力に入力できます。
|
UISoftMax uisoftmax
|
float/int (パラメータと同じ)
|
範囲の最大スライダ値。UISoftMax より大きい値(ただし、指定されている場合は UIMax より小さい値)をパラメータの数値入力に入力できます。
|
UIFieldNames |
int |
アトリビュート値で見つかった設定を使用して、int パラメータのドロップダウン メニューを作成します。 形式は MEL コマンド「attributeQuery -listEnum」と同じです。この形式は、等号記号「=」で分けられたインデックス値を指定できる、コロン「:」で区切られたフィールド名の文字列です。インデックスは 0 から始まり、アイテムのインデックス値は、明示的に指定されない場合、以前のアイテム(ある場合)が
1 ずつ増分されるインデックスになります。
たとえば、"Shaded:Wireframe=8:Bounding Box"では、値が 0、8、および 9 の 3 つのアイテムが定義されます。
|
ResourceName SasResourceAddress
|
string |
既定のテクスチャ ファイル名。エフェクトを設定すると、プラグインでテクスチャが自動的にロードおよび接続されます。
|
TextureType ResourceType
|
string |
変数が texture[1D|2D|3D|Cube]ではなく、未指定のテクスチャとして記述されている場合、この注釈を使用してテクスチャ タイプを指定できます。有効な値は、「1D」、「2D」、「3D」、「Cube」です。
|
Space |
string |
位置と方向のセマンティックに既定のスペースを指定できます。有効な値は、「Object」、「World」、「View」、「Camera」です。
|
ライト固有のセマンティック
MUniformParameter クラスで現在サポートされているすべてのセマンティックに加え、dx11ShaderNode でライト固有の注釈が追加されます。ライトが Maya で駆動されると、描画コンテキストからのライト情報を使用して、サポートされるすべてのパラメータの値が書き込まれます。サポートされないパラメータは、シェーダで検出された値のままになります。つまり、ポイント
ライトに接続すると、位置パラメータは駆動されますが、方向パラメータは駆動されません。
セマンティック
|
タイプ
|
Maya ライト パラメータ
|
説明(Description)
|
LightColor、Color、 LightDiffuseColor、Diffuse、 LightAmbientColor、Ambient、 LightSpecularColor、Specular
|
float3 |
カラー |
値はライトの強度でプリマルチプライされません。 |
LightIntensity |
浮動小数点数 |
強度 |
|
LightEnable |
bool |
既定では、照らす(Illuminate) |
グローバル ライト設定を含むライトの可視性に従います。true の場合、Maya ライトがアクティブになり、表示されます。 |
LightType |
int |
型 |
どのライト タイプに接続されている場合でも正しく反応できる汎用ライト コードを作成できます。有効な値は次のとおりです。 2: スポット(Spot) 3: ポイント(Point) 4: ディレクショナル(Directional) 5: アンビエント(Ambient) 6: ボリューム(Volume) 7: エリア(Area)
|
Position |
float3 |
|
ポイント ライト、スポット ライト、エリア ライト、およびボリューム ライトの位置。リファレンス空間を注釈で指定できます。 |
Direction |
float3 |
|
ディレクショナル ライトとスポット ライトの方向。リファレンス空間を注釈で指定できます。 |
Hotspot |
浮動小数点数 |
円錐角度/周縁部の角度 |
スポット ライトの場合、ラジアンで表された半角。Hotspot は ConeAngle および(ConeAngle+PenumbraAngle)の最小値として計算されます。 |
LightFalloff Falloff
|
浮動小数点数 |
円錐角度/周縁部の角度 |
スポット ライトの場合、ラジアンで表された半角。Falloff は ConeAngle および(ConeAngle+PenumbraAngle)の最大値として計算されます。 |
DecayRate |
浮動小数点数 |
減衰率(Decay Rate) |
スポット ライト、ポイント ライト、エリア ライト、ボリューム ライトの場合、指数として表されます。 Maya は次の値を提供します。 0.0: 減衰なし(No Decay) 1.0: 一次(Linear) 2.0: 二次(Quadratic) 3.0: 三次(Cubic)
|
ShadowFlag |
bool |
各種 |
true の場合、ライトは、サーフェスで受像することができるシャドウをキャストします。この値は、グローバルなシャドウ(Shadows)が有効になっていて、ライトの深度マップ シャドウの使用(Use Depth Map Shadows)がオンで、かつサーフェスのシャドウの受像(Receive Shadows)がオンの場合にのみ true になります。
|
ShadowColor |
float3 |
シャドウ カラー(Shadow Color) |
|
ShadowMap |
Texture2D |
|
Maya で計算された深度マップ シャドウ テクスチャが含まれます。 |
ShadowMapBias |
浮動小数点数 |
dmapBias |
|
ShadowMapMatrix ShadowMapXForm
|
float4x4 |
|
ライトの変換行列を表示します。 |
サポートされるテクニック注釈
名前
|
タイプ
|
説明
|
index_buffer_type |
string |
インデックス バッファ ジェネレータと mutator プラグインでカスタムのプリミティブ タイプを指定できます。dx11Shader プロジェクトには、「PNAEN9」(三角形と隣接エッジ)、「PNAEN18」(三角形、隣接エッジ、ドミナント
エッジ、ドミナント頂点)の値が使用されているときに、隣接エッジ法線を使用するポイント法線三角形(PN AEN)インデックス バッファを生成できる mutator が含まれます。
|
texture_mipmaplevels
|
int |
このテクニックを使用しているときにテクスチャを生成およびロードする mip マップ レベルを指定します。 0 の値は、可能なすべてのレベルをロードすることを表します。
|
isTransparent |
int |
Maya で適切なパスとカリングを使用できるエフェクトの不透明度を指定します。サポートされる値は以下のとおりです。 0: テクニックは常に不透明です。 1: テクニックは常に透明です。 2: テクニックの不透明度は「Opacity」セマンティックを持つ float パラメータに関連付けられ、不透明度の値が 1.0 未満の場合は透明になります。
|
テクスチャ固有の注釈
名前
|
タイプ
|
説明
|
mipmaplevels |
int |
デザインされたテクスチャを生成およびロードする mip マップ レベルを指定します。 この値は、テクニックの値セットよりも優先されます。
|
サポートされるパス注釈
エフェクトでは、シャドウの深度マップを描画する場合など、テクニックのパスの一部を特殊なコンテキストでアクティブにすることを要求できます。これは、パスをアクティブにできるコンテキストを指定する、「drawContext」という名前の文字列注釈を追加して行われます。
「colorPass」、「shadowPass」、「depthPass」、「normalDepthPass」のコンテキストがサポートされます。
グローバル セマンティック
名前
|
タイプ
|
説明
|
MayaSwatchRender |
bool |
現在のレンダリング プロセスがスウォッチの描画であるタイミングを指定します。 ユーザは、スウォッチを描画するときに特定のパスを処理できます。
|