Share via


ID2D1DrawInfo::SetVertexProcessing-Methode (d2d1effectauthor.h)

Legt einen Vertexpuffer, einen entsprechenden Vertex-Shader und Optionen fest, um zu steuern, wie die Scheitelpunkte vom Direct2D-Kontext behandelt werden sollen.

Syntax

HRESULT SetVertexProcessing(
  [in, optional] ID2D1VertexBuffer            *vertexBuffer,
                 D2D1_VERTEX_OPTIONS          vertexOptions,
  [in, optional] const D2D1_BLEND_DESCRIPTION *blendDescription,
  [in, optional] const D2D1_VERTEX_RANGE      *vertexRange,
                 const GUID                   *vertexShader
);

Parameter

[in, optional] vertexBuffer

Typ: ID2D1VertexBuffer*

Der Vertexpuffer, wenn dies gelöscht wird, werden der Standard-Vertex-Shader und die Zuordnung zu den Transformationsrechtecken verwendet.

vertexOptions

Typ: D2D1_VERTEX_OPTIONS

Optionen, die beeinflussen, wie der Renderer mit dem Vertex-Shader interagiert.

[in, optional] blendDescription

Typ: const D2D1_BLEND_DESCRIPTION*

Wie die Scheitelpunkte mit der Ausgabetextur gemischt werden.

[in, optional] vertexRange

Typ: const D2D1_VERTEX_RANGE*

Der Satz von Scheitelpunkten, die aus dem Puffer verwendet werden sollen.

vertexShader

Typ: GUID*

Die GUID des Vertex-Shaders.

Rückgabewert

Typ: HRESULT

Wenn die Methode erfolgreich ist, gibt sie S_OK zurück. Wenn ein Fehler auftritt, wird ein HRESULT-Fehlercode zurückgegeben.

Hinweise

Die Vertex-Shader, die dem Vertexpuffer über die Vertex-Shader-GUID zugeordnet sind, müssen über die ID2D1EffectContext::LoadVertexShader-Methode geladen worden sein, bevor dieser Aufruf erfolgt.

Wenn Sie die Scheitelpunktoption D2D1_VERTEX_OPTIONS_DO_NOT_CLEAR übergeben, tritt für die Methode ein Fehler auf, es sei denn, die Mischbeschreibung lautet genau wie folgt:

D2D1_BLEND_DESCRIPTION blendDesc = 
        {
            D2D1_BLEND_ONE,
            D2D1_BLEND_ZERO,
            D2D1_BLEND_OPERATION_ADD,

            D2D1_BLEND_ONE,
            D2D1_BLEND_ZERO,
            D2D1_BLEND_OPERATION_ADD,

            { 1.0f, 1.0f, 1.0f, 1.0f }
        };

Wenn dieser Aufruf fehlschlägt, wird der entsprechende ID2D1Effect-instance in einen Fehlerzustand versetzt und kann nicht gezeichnet werden.

Wenn blendDescription NULL ist, wird ein Überblendmodus verwendet.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8 und Plattformupdate für Windows 7 [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 und Plattformupdate für Windows Server 2008 R2 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile d2d1effectauthor.h
Bibliothek D2d1.lib

Weitere Informationen

ID2D1DrawInfo

ID2D1EffectContext::CreateVertexBuffer

ID2D1EffectContext::LoadVertexShader