PFND3D11DDI_SETSHADER_WITH_IFACES Rückruffunktion (d3d10umddi.h)
Die CsSetShaderWithIfaces--Funktion legt den Compute-Shadercode zusammen mit einer Gruppe von Schnittstellen fest, sodass alle nachfolgenden Verteilervorgänge diesen Code und diese Schnittstellen verwenden.
Syntax
PFND3D11DDI_SETSHADER_WITH_IFACES Pfnd3d11ddiSetshaderWithIfaces;
void Pfnd3d11ddiSetshaderWithIfaces(
D3D10DDI_HDEVICE unnamedParam1,
D3D10DDI_HSHADER unnamedParam2,
[in] UINT NumClassInstances,
const UINT *unnamedParam4,
const D3D11DDIARG_POINTERDATA *unnamedParam5
)
{...}
Parameter
unnamedParam1
hDevice [in]
Ein Handle für das Anzeigegerät (Grafikkontext).
unnamedParam2
hShader- [in]
Ein Handle für das Computeshadercodeobjekt.
[in] NumClassInstances
Die Anzahl der Klasseninstanzen für Implementierungen der Schnittstellen.
unnamedParam4
pPointerData- [in]
Ein Array von D3D11DDIARG_POINTERDATA Strukturen. Jede Struktur beschreibt den Speicherort der Daten, auf die von einer Klasseninstanz verwiesen wird, die einer Schnittstellenimplementierung zugewiesen ist. Die Anzahl der Elemente im Array wird durch die NumClassInstances Parameter angegeben.
unnamedParam5
pIfaces [in]
Ein Array von Funktionstabellenbezeichnern. Jeder Bezeichner entspricht einer Klasseninstanz, die einer Schnittstellenimplementierung zugewiesen ist. Die Anzahl der Elemente im Array wird durch die NumClassInstances Parameter angegeben.
Rückgabewert
Nichts
Bemerkungen
Der Treiber kann die pfnSetErrorCb Rückruffunktion verwenden, um einen Fehlercode festzulegen.
Jede Klasseninstanz für eine Schnittstellenimplementierung weist die folgenden Informationen auf:
- Code, der dieser Klasseninstanz zugeordnet ist
- Ein Speicherort für die Daten, die von dieser Klasseninstanz verwendet werden
Der Treiber kann E_OUTOFMEMORY übergeben (wenn der Treiber nicht genügend Arbeitsspeicher hat) oder D3DDDIERR_DEVICEREMOVED (wenn das Gerät entfernt wird) in einem Aufruf der pfnSetErrorCb-Funktion. Die Direct3D-Laufzeit bestimmt, dass alle anderen Fehler kritisch sind. Wenn der Treiber Fehler übergibt, die D3DDDIERR_DEVICEREMOVED enthalten, bestimmt die Direct3D-Laufzeit, dass das Handle ungültig ist; Daher ruft die Laufzeit die DestroyShader--Funktion nicht auf, um das Handle zu zerstören, das der hShader Parameter angibt.
Die GsSetShaderWithIfaces--Funktion legt den Geometrie-Shadercode zusammen mit einer Gruppe von Schnittstellen fest, sodass alle nachfolgenden Zeichnungsvorgänge diesen Code und diese Schnittstellen verwenden.
Die PsSetShaderWithIfaces--Funktion legt den Pixelshadercode zusammen mit einer Gruppe von Schnittstellen fest, sodass alle nachfolgenden Zeichnungsvorgänge diesen Code und diese Schnittstellen verwenden.
Die DsSetShaderWithIfaces--Funktion legt den Domänen-Shadercode zusammen mit einer Gruppe von Schnittstellen fest, sodass alle nachfolgenden Zeichnungsvorgänge diesen Code und diese Schnittstellen verwenden.
Die HsSetShaderWithIfaces--Funktion legt den Hull-Shadercode zusammen mit einer Gruppe von Schnittstellen fest, sodass alle nachfolgenden Zeichnungsvorgänge diesen Code und diese Schnittstellen verwenden.
Die VsSetShaderWithIfaces--Funktion legt den Vertex-Shadercode zusammen mit einer Gruppe von Schnittstellen fest, sodass alle nachfolgenden Zeichnungsvorgänge diesen Code und diese Schnittstellen verwenden.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | CsSetShaderWithIfaces wird ab dem Windows 7-Betriebssystem unterstützt. |
Zielplattform- | Desktop |
Header- | d3d10umddi.h (include D3d10umddi.h) |