ID3D11ShaderReflectionVariable::GetInterfaceSlot
インターフェイス ポインターを表す変数の対応するインターフェイス スロットを取得します。
UINT
GetInterfaceSlot(
UINT uArrayIndex
);
パラメータ
- uArrayIndex
スロット番号を取得する配列要素のインデックスです。非配列変数の場合、この値はゼロになります。
戻り値
インターフェイスの配列内のインターフェイスのインデックスを返します。
解説
GetInterfaceSlot は、動的リンク配列の中でインターフェイス インスタンスに対応するスロットを取得します。返されたスロット番号を使用して、インターフェイス インスタンスを特定のクラス インスタンスに設定します。詳細については、HLSL の「インターフェイスとクラス」の概要を参照してください。
例
インターフェイス スロットの取得と使用
ID3D11ShaderReflectionVariable* pAmbientLightingVar = pReflector->GetVariableByName("g_abstractAmbientLighting"); g_iAmbientLightingOffset = pAmbientLightingVar->GetInterfaceSlot(0); g_pPSClassLinkage->GetClassInstance( "g_hemiAmbientLight", 0, &g_pHemiAmbientLightClass ); g_dynamicLinkageArray[g_iAmbientLightingOffset] = g_pHemiAmbientLightClass; ... pd3dImmediateContext->PSSetShader( g_pPixelShader, g_dynamicLinkageArray, g_iNumPSInterfaces );
要件
ヘッダー: D3D11Shader.h 宣言
ライブラリ: D3D11.lib 内容