Método ID3D11ShaderReflectionVariable::GetInterfaceSlot (d3d11shader.h)
Obtiene la ranura de interfaz correspondiente para una variable que representa un puntero de interfaz.
Sintaxis
UINT GetInterfaceSlot(
[in] UINT uArrayIndex
);
Parámetros
[in] uArrayIndex
Tipo: UINT
Índice del elemento de matriz para el que se obtiene el número de ranura. Para una variable que no sea de matriz, este valor será cero.
Valor devuelto
Tipo: UINT
Devuelve el índice de la interfaz en la matriz de interfaz.
Comentarios
GetInterfaceSlot obtiene la ranura correspondiente en una matriz de vinculación dinámica para una instancia de interfaz. El número de ranura devuelto se usa para establecer una instancia de interfaz en una instancia de clase determinada. Consulte la introducción a las interfaces y clases de HLSL para obtener información adicional.
La interfaz de este método se hospeda en la D3DCompiler_xx.dll DLL lista para usar.
Ejemplos
Recuperación y uso de una ranura de interfaz
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 );
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Windows |
Encabezado | d3d11shader.h |
Library | D3DCompiler.lib |
Archivo DLL | D3DCompiler_47.dll |