ID3D11DeviceContext::SOSetTargets-Methode (d3d11.h)

Legen Sie die Zielausgabepuffer für die Streamausgabephase der Pipeline fest.

Syntax

void SOSetTargets(
  [in]           UINT         NumBuffers,
  [in, optional] ID3D11Buffer * const *ppSOTargets,
  [in, optional] const UINT   *pOffsets
);

Parameter

[in] NumBuffers

Typ: UINT

Die Anzahl des Puffers, der an das Gerät gebunden werden soll. Es können maximal vier Ausgabepuffer festgelegt werden. Wenn weniger als vier durch den Aufruf definiert werden, werden die verbleibenden Pufferslots auf NULL festgelegt. Siehe Hinweise.

[in, optional] ppSOTargets

Typ: ID3D11Buffer*

Das Array von Ausgabepuffern (siehe ID3D11Buffer), das an das Gerät gebunden werden soll. Die Puffer müssen mit dem Flag D3D11_BIND_STREAM_OUTPUT erstellt worden sein.

[in, optional] pOffsets

Typ: const UINT*

Array von Offsets zu den Ausgabepuffern von ppSOTargets, ein Offset für jeden Puffer. Die Offsetwerte müssen in Bytes sein.

Rückgabewert

Keine

Bemerkungen

Ein Offset von -1 führt dazu, dass der Streamausgabepuffer angefügt wird, und es wird fortgesetzt, nachdem der letzte Speicherort in einem vorherigen Streamausgabedurchlauf in den Puffer geschrieben wurde.

Das Aufrufen dieser Methode mithilfe eines Puffers, der derzeit für das Schreiben gebunden ist, bindet stattdessen effektiv NULL , da ein Puffer nicht gleichzeitig als Eingabe und Ausgabe gebunden werden kann.

Die Debugebene generiert eine Warnung, wenn verhindert wird, dass eine Ressource gleichzeitig als Eingabe und Ausgabe gebunden wird. Dies verhindert jedoch nicht, dass ungültige Daten von der Runtime verwendet werden.

Die -Methode enthält einen Verweis auf die übergebenen Schnittstellen. Dies unterscheidet sich vom Gerätestatusverhalten in Direct3D 10.

Beachten Sie, dass im Gegensatz zu einigen anderen Ressourcenmethoden in Direct3D alle derzeit gebundenen Ziele durch Aufrufen SOSetTargets(0, nullptr, nullptr);von ungebunden werden.

Windows Phone 8: Diese API wird unterstützt.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile d3d11.h
Bibliothek D3D11.lib

Weitere Informationen

ID3D11DeviceContext