ID3D11ShaderReflectionVariable::GetInterfaceSlot-Methode (d3d11shader.h)
Ruft den entsprechenden Schnittstellenslot für eine Variable ab, die einen Schnittstellenzeiger darstellt.
Syntax
UINT GetInterfaceSlot(
[in] UINT uArrayIndex
);
Parameter
[in] uArrayIndex
Typ: UINT
Index des Arrayelements, für das die Slotnummer abgerufen werden soll. Für eine Nicht-Array-Variable ist dieser Wert null.
Rückgabewert
Typ: UINT
Gibt den Index der Schnittstelle im Schnittstellenarray zurück.
Hinweise
GetInterfaceSlot ruft den entsprechenden Slot in einem dynamischen Verknüpfungsarray für eine Schnittstelle instance ab. Die zurückgegebene Slotnummer wird verwendet, um eine Schnittstelle instance auf eine bestimmte Klassen-instance festzulegen. Weitere Informationen finden Sie in der Übersicht über HLSL-Schnittstellen und -Klassen .
Die Schnittstelle dieser Methode wird im out-of-box DLL-D3DCompiler_xx.dll gehostet.
Beispiele
Abrufen und Verwenden eines Schnittstellenslots
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 );
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | d3d11shader.h |
Bibliothek | D3DCompiler.lib |
DLL | D3DCompiler_47.dll |