Partager via


ID3D11DeviceContext2::CopyTileMappings, méthode (d3d11_2.h)

Copie les mappages d’une ressource en mosaïque source vers une ressource en mosaïque de destination.

Syntaxe

HRESULT CopyTileMappings(
  [in] ID3D11Resource                        *pDestTiledResource,
  [in] const D3D11_TILED_RESOURCE_COORDINATE *pDestRegionStartCoordinate,
  [in] ID3D11Resource                        *pSourceTiledResource,
  [in] const D3D11_TILED_RESOURCE_COORDINATE *pSourceRegionStartCoordinate,
  [in] const D3D11_TILE_REGION_SIZE          *pTileRegionSize,
  [in] UINT                                  Flags
);

Paramètres

[in] pDestTiledResource

Type : ID3D11Resource*

Pointeur vers la ressource en mosaïque de destination.

[in] pDestRegionStartCoordinate

Type : const D3D11_TILED_RESOURCE_COORDINATE*

Pointeur vers une structure de D3D11_TILED_RESOURCE_COORDINATE qui décrit les coordonnées de départ de la ressource en mosaïque de destination.

[in] pSourceTiledResource

Type : ID3D11Resource*

Pointeur vers la ressource en mosaïque source.

[in] pSourceRegionStartCoordinate

Type : const D3D11_TILED_RESOURCE_COORDINATE*

Pointeur vers une structure D3D11_TILED_RESOURCE_COORDINATE qui décrit les coordonnées de départ de la ressource en mosaïque source.

[in] pTileRegionSize

Type : const D3D11_TILE_REGION_SIZE*

Pointeur vers une structure D3D11_TILE_REGION_SIZE qui décrit la taille de la région en mosaïque.

[in] Flags

Type : UINT

Combinaison de valeurs D3D11_TILE_MAPPING_FLAGS combinées à l’aide d’une opération OR au niveau du bit. La seule valeur valide est D3D11_TILE_MAPPING_NO_OVERWRITE, ce qui indique que les commandes envoyées précédemment à l’appareil qui peuvent encore s’exécuter ne référencent aucune des régions de vignette en cours de mise à jour. L’appareil peut alors éviter d’avoir à vider le travail précédemment soumis pour effectuer la mise à jour du mappage de vignettes. Si l’application ne respecte pas cette promesse en mettant à jour les mappages de vignettes pour les emplacements des ressources en mosaïques qui sont toujours référencés par des commandes en attente, des résultats de comportement de rendu non définis, y compris le risque de ralentissements significatifs sur certaines architectures. Cela ressemble au concept « pas de remplacement » qui existe ailleurs dans l’API Direct3D, sauf appliqué à la structure de données de mappage de vignettes elle-même (qui, dans le matériel, est une table de pages). L’absence de la valeur D3D11_TILE_MAPPING_NO_OVERWRITE nécessite que les mises à jour de mappage de vignettes spécifiées par CopyTileMappings soient effectuées avant qu’une commande Direct3D suivante puisse continuer.

Valeur retournée

Type : HRESULT

Retourne S_OK en cas de réussite ; dans le cas contraire, retourne l’un des éléments suivants :

  • Retourne E_INVALIDARG si diverses conditions telles que des indicateurs non valides ou le passage de ressources non mosaïques entraînent la suppression de l’appel. Les régions dest et source doivent toutes s’adapter à leur ressource ou leur comportement n’est pas défini (la couche de débogage émettra une erreur).
  • Retourne E_OUTOFMEMORY si l’appel entraîne le fait que le pilote doit allouer de l’espace pour les nouveaux mappages de tables de pages, mais manque de mémoire. Si une mémoire insuffisante se produit lorsque cela est appelé dans une liste de commandes et que la liste de commandes est en cours d’exécution, l’appareil est supprimé. Les applications peuvent éviter cette situation en effectuant uniquement des appels de mise à jour qui modifient les mappages existants à partir des ressources en mosaïques dans les listes de commandes (les pilotes n’auront donc pas à allouer de mémoire de table de pages, mais modifient uniquement le mappage).

Remarques

CopyTileMappings aide à effectuer des tâches telles que le déplacement des mappages à l’intérieur et entre les ressources en mosaïques, par exemple, le défilement des vignettes. Les régions source et de destination peuvent se chevaucher ; le résultat de la copie dans cette situation est comme si la source a été enregistrée dans un emplacement temporaire, puis écrite dans la destination.

Pour plus d’informations sur les ressources en mosaïque, consultez Ressources en mosaïque.

Configuration requise

   
Client minimal pris en charge Windows 8.1 [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2012 R2 [applications de bureau | Applications UWP]
Plateforme cible Windows
En-tête d3d11_2.h
Bibliothèque D3D11.lib

Voir aussi

ID3D11DeviceContext2