Freigeben über


PFND3D10DDI_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT Rückruffunktion (d3d10umddi.h)

Die CreateGeometryShaderWithStreamOutput--Funktion erstellt einen Geometrie-Shader mit Datenstromausgabe.

Syntax

PFND3D10DDI_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT Pfnd3d10ddiCreategeometryshaderwithstreamoutput;

void Pfnd3d10ddiCreategeometryshaderwithstreamoutput(
  D3D10DDI_HDEVICE unnamedParam1,
  const D3D10DDIARG_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT *unnamedParam2,
  D3D10DDI_HSHADER unnamedParam3,
  D3D10DDI_HRTSHADER unnamedParam4,
  const D3D10DDIARG_STAGE_IO_SIGNATURES *unnamedParam5
)
{...}

Parameter

unnamedParam1

hDevice [in]

Ein Handle für das Anzeigegerät (Grafikkontext).

unnamedParam2

pCreateGeometryWithShaderOutput [in]

Ein Zeiger auf eine D3D10DDIARG_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT-Struktur, die die Parameter beschreibt, die der Anzeigetreiber für den Benutzermodus verwendet, um einen Geometrie-Shader mit Streamausgabe zu erstellen.

unnamedParam3

hShader- [in]

Ein Handle für die privaten Daten des Treibers für den Geometrie-Shader mit Streamausgabe. Der Treiber gibt die Größe des Speicherbereichs in Bytes zurück, den die Microsoft Direct3D-Laufzeit für die privaten Daten aus einem Aufruf der CalcPrivateGeometryShaderWithStreamOutput-Funktion des Treibers zuordnen muss. Das Handle ist wirklich nur ein Zeiger auf einen Speicherbereich, dessen Größe der Treiber angefordert hat. Der Treiber verwendet diesen Speicherbereich, um interne Datenstrukturen zu speichern, die mit seinem Shaderobjekt zusammenhängen.

unnamedParam4

hRTShader [in]

Ein Handle für den Geometrie-Shader mit Streamausgabe, den der Treiber verwenden sollte, wenn er wieder in die Direct3D-Laufzeit aufruft.

unnamedParam5

pSignatures [in]

Ein Zeiger auf eine D3D10DDIARG_STAGE_IO_SIGNATURES Struktur, aus der die Signatur des Shaders besteht.

Rückgabewert

Nichts

Bemerkungen

Der Treiber kann die pfnSetErrorCb Rückruffunktion verwenden, um einen Fehlercode festzulegen.

Der Treiber kann E_OUTOFMEMORY übergeben (wenn der Treiber nicht genügend Arbeitsspeicher hat) oder D3DDDIERR_DEVICEREMOVED (wenn das Gerät entfernt wurde) in einem Aufruf der pfnSetErrorCb-Funktion. Die Direct3D-Laufzeit bestimmt, dass alle anderen Fehler kritisch sind. Wenn der Treiber Fehler, einschließlich D3DDDIERR_DEVICEREMOVED, übergibt, bestimmt die Direct3D-Laufzeit, dass das Handle ungültig ist. Daher ruft die Laufzeit die DestroyShader--Funktion nicht auf, um den Handle zu zerstören, den der hShader Parameter angibt.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar in Windows Vista und höheren Versionen der Windows-Betriebssysteme.
Zielplattform- Desktop
Header- d3d10umddi.h (include D3d10umddi.h)

Siehe auch

CalcPrivateGeometryShaderWithStreamOutput

D3D10DDIARG_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT

D3D10DDIARG_STAGE_IO_SIGNATURES

D3D10DDI_DEVICEFUNCS

DestroyShader

pfnSetErrorCb