ID3D10Texture1D::Map, méthode (d3d10.h)
Obtenez un pointeur vers les données contenues dans une sous-ressource et refusez l’accès GPU à cette sous-ressource.
Syntaxe
HRESULT Map(
[in] UINT Subresource,
[in] D3D10_MAP MapType,
[in] UINT MapFlags,
[out] void **ppData
);
Paramètres
[in] Subresource
Type : UINT
Numéro d’index de la sous-ressource. Pour plus d’informations, consultez D3D10CalcSubresource .
[in] MapType
Type : D3D10_MAP
Spécifie les autorisations de lecture et d’écriture du processeur pour une ressource. Pour connaître les valeurs possibles, consultez D3D10_MAP.
[in] MapFlags
Type : UINT
Indicateur qui spécifie ce que le processeur doit faire lorsque le GPU est occupé. Cet indicateur est facultatif.
[out] ppData
Type : void**
Pointeur vers les données de ressource de texture.
Valeur retournée
Type : HRESULT
Si cette fonction réussit, elle retourne S_OK. Pour obtenir d’autres restrictions et obtenir la liste des valeurs d’erreur qui peuvent être retournées par l’une des méthodes Map , consultez Remarques.
Remarques
Le mappage d’une texture permet au processeur d’accéder directement aux données sous-jacentes dans la sous-ressource d’une texture. Pour que la méthode réussisse, la texture en cours de mappage doit être créée avec les indicateurs appropriés (voir D3D10_CPU_ACCESS_FLAG), et son utilisation spécifiée (voir D3D10_USAGE) doit être D3D10_USAGE_DYNAMIC ou D3D10_USAGE_STAGING.
Les échecs courants des méthodes Map sont indiqués par les valeurs de retour suivantes :
Pour plus d’informations sur les valeurs de retour précédentes, consultez DXGI_ERROR.
Map présente les restrictions suivantes :
- Une sous-ressource unique ne peut pas être mappée plusieurs fois ; en d’autres termes, n’appelez pas Map sur une sous-ressource déjà mappée.
- Toute sous-ressource liée au pipeline doit être démapped avant qu’une opération de rendu (c’est-à-dire avant ID3D10Device::D raw) puisse être exécutée.
FLOAT* pTexels = (FLOAT*)pData;
for( UINT col = 0; col < width; col++ )
{
pTexels[col*4 + 0]; // Alpha
pTexels[col*4 + 1]; // Blue
pTexels[col*4 + 2]; // Green
pTexels[col*4 + 3]; // Red
}
Différences entre Direct3D 9 et Direct3D 10 : La carte dans Direct3D 10 est analogue au verrouillage de ressource dans Direct3D 9. |
Configuration requise
Plateforme cible | Windows |
En-tête | d3d10.h |
Bibliothèque | D3D10.lib |
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour