ID3D11ShaderReflectionVariable::GetInterfaceSlot 方法 (d3d11shader.h)

获取代表接口指针的变量的相应接口槽。

语法

UINT GetInterfaceSlot(
  [in] UINT uArrayIndex
);

参数

[in] uArrayIndex

类型: UINT

要获取其槽号的数组元素的索引。 对于非数组变量,此值将为零。

返回值

类型: UINT

返回接口数组中接口的索引。

注解

GetInterfaceSlot 获取接口实例的动态链接数组中的相应槽。 返回的槽号用于将接口实例设置为特定的类实例。 有关其他信息,请参阅 HLSL 接口和类 概述。

此方法的接口托管在现成的 DLL D3DCompiler_xx.dll 中。

示例

检索和使用接口槽


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 );
      

要求

要求
目标平台 Windows
标头 d3d11shader.h
Library D3DCompiler.lib
DLL D3DCompiler_47.dll

另请参阅

ID3D11ShaderReflectionVariable 接口