Partager via


ID2D1DrawInfo ::SetVertexProcessing, méthode (d2d1effectauthor.h)

Définit une mémoire tampon de vertex, un nuanceur de vertex correspondant et des options pour contrôler la façon dont les sommets doivent être gérés par le contexte Direct2D.

Syntaxe

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
);

Paramètres

[in, optional] vertexBuffer

Type : ID2D1VertexBuffer*

La mémoire tampon de vertex, si elle est effacée, le nuanceur de vertex par défaut et le mappage aux rectangles de transformation sont utilisés.

vertexOptions

Type : D2D1_VERTEX_OPTIONS

Options qui influencent la façon dont le convertisseur interagira avec le nuanceur de vertex.

[in, optional] blendDescription

Type : const D2D1_BLEND_DESCRIPTION*

Comment les sommets seront fusionnés avec la texture de sortie.

[in, optional] vertexRange

Type : const D2D1_VERTEX_RANGE*

Ensemble de sommets à utiliser à partir de la mémoire tampon.

vertexShader

Type : GUID*

GUID du nuanceur de vertex.

Valeur retournée

Type : HRESULT

Si la méthode réussit, elle retourne S_OK. En cas d’échec, elle retourne un code d’erreur HRESULT .

Remarques

Les nuanceurs de vertex associés à la mémoire tampon de vertex via le GUID du nuanceur de vertex doivent avoir été chargés via la méthode ID2D1EffectContext ::LoadVertexShader avant d’effectuer cet appel.

Si vous passez l’option de vertex D2D1_VERTEX_OPTIONS_DO_NOT_CLEAR, la méthode échoue, sauf si la description du mélange est exactement la suivante :

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 }
        };

Si cet appel échoue, le instance ID2D1Effect correspondant est placé dans un état d’erreur et ne parvient pas à dessiner.

Si blendDescription a la valeur NULL, un mode de fusion de premier plan est utilisé.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 8 et mise à jour de plateforme pour Windows 7 [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2012 et mise à jour de plateforme pour Windows Server 2008 R2 [applications de bureau | Applications UWP]
Plateforme cible Windows
En-tête d2d1effectauthor.h
Bibliothèque D2d1.lib

Voir aussi

ID2D1DrawInfo

ID2D1EffectContext ::CreateVertexBuffer

ID2D1EffectContext ::LoadVertexShader