IDCompositionSurfaceFactory::CreateSurface, méthode (dcomp.h)
Crée un objet surface qui peut être associé à un ou plusieurs visuels pour la composition.
Syntaxe
HRESULT CreateSurface(
[in] UINT width,
[in] UINT height,
[in] DXGI_FORMAT pixelFormat,
[in] DXGI_ALPHA_MODE alphaMode,
[out] IDCompositionSurface **surface
);
Paramètres
[in] width
Largeur de la surface, en pixels.
[in] height
Hauteur de la surface, en pixels.
[in] pixelFormat
Format de pixels de la surface.
[in] alphaMode
Format du canal alpha, si un canal alpha est inclus dans le format de pixels. Il peut s’agir de l’un des DXGI_ALPHA_MODE_PREMULTIPLIED ou DXGI_ALPHA_MODE_IGNORE. Il peut également être DXGI_ALPHA_MODE_UNSPECIFIED, ce qui est interprété comme DXGI_ALPHA_MODE_IGNORE.
[out] surface
Objet surface nouvellement créé. Ce paramètre ne doit pas avoir la valeur NULL.
Valeur retournée
Si la fonction réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT. Pour obtenir la liste des codes d’erreur, consultez Codes d’erreur DirectComposition .
Notes
Une surface Microsoft DirectComposition est un tableau rectangulaire de pixels qui peut être associé à un visuel pour la composition.
Un objet surface nouvellement créé est dans un état non initialisé. Bien qu’elle soit non initialisée, la surface n’a aucun effet sur la composition de l’arborescence visuelle. Il se comporte exactement comme une surface qui a 100 % de pixels transparents.
Pour initialiser la surface avec des données de pixels, utilisez la méthode IDCompositionSurface::BeginDraw . Le premier appel à cette méthode doit couvrir l’ensemble de la surface pour fournir une valeur initiale pour chaque pixel. Les appels suivants peuvent spécifier des sous-rectangles plus petits de la surface à mettre à jour.
Cette méthode échoue si la largeur ou la hauteur dépassent la taille maximale de texture. Si votre scénario nécessite des dimensions au-delà de la taille maximale de texture, utilisez la méthode CreateVirtualSurface .
Les surfaces DirectComposition prennent en charge les formats de pixels suivants :
- DXGI_FORMAT_B8G8R8A8_UNORM
- DXGI_FORMAT_R8G8B8A8_UNORM
- DXGI_FORMAT_R16G16B16A16_FLOAT
Spécifications
Client minimal pris en charge | Windows 8.1 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2012 R2 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | dcomp.h |
Bibliothèque | Dcomp.lib |
DLL | Dcomp.dll |
Voir aussi
IDCompositionDevice2::CreateSurface