Méthode IDirect3DDevice9 ::CreateRenderTarget (d3d9.h)
Crée une surface de cible de rendu.
Syntaxe
HRESULT CreateRenderTarget(
[in] UINT Width,
[in] UINT Height,
[in] D3DFORMAT Format,
[in] D3DMULTISAMPLE_TYPE MultiSample,
[in] DWORD MultisampleQuality,
[in] BOOL Lockable,
[out, retval] IDirect3DSurface9 **ppSurface,
[in] HANDLE *pSharedHandle
);
Paramètres
[in] Width
Type : UINT
Largeur de la surface cible de rendu, en pixels.
[in] Height
Type : UINT
Hauteur de la surface de la cible de rendu, en pixels.
[in] Format
Type : D3DFORMAT
Membre du D3DFORMAT type énuméré, décrivant le format de la cible de rendu.
[in] MultiSample
Type : D3DMULTISAMPLE_TYPE
Membre du D3DMULTISAMPLE_TYPE type énuméré, qui décrit le type de mémoire tampon à échantillonnage multiple. Ce paramètre spécifie le type d’anticrénelage pour cette cible de rendu. Lorsque cette surface est passée à IDirect3DDevice9 ::SetRenderTarget, son type multi-échantillonnage doit être identique à celui du gabarit de profondeur défini par IDirect3DDevice9 ::SetDepthStencilSurface.
[in] MultisampleQuality
Type : DWORD
Niveau de qualité. La plage valide est comprise entre zéro et un de moins que le niveau retourné par pQualityLevels utilisé par IDirect3D9 ::CheckDeviceMultiSampleType. La transmission d’une valeur plus élevée retourne l’erreur, D3DERR_INVALIDCALL. Les valeurs MultisampleQuality des cibles de rendu appairées, des surfaces de gabarit de profondeur et du type multi-échantillonnage doivent toutes correspondre.
[in] Lockable
Type : BOOL
Les cibles de rendu ne sont pas verrouillables, sauf si l’application spécifie TRUE pour Lockable.
Notez que les cibles de rendu verrouillables réduisent les performances sur certains matériels graphiques. Les performances de lecture (déplacement de données de la mémoire vidéo vers la mémoire système) dépendent du type de matériel utilisé (AGP ou PCI Express) et sont généralement bien inférieures aux performances de chargement (déplacement de données du système vers la mémoire vidéo). Si vous avez besoin d’un accès en lecture pour afficher des cibles, utilisez GetRenderTargetData au lieu de cibles de rendu verrouillables.
[out, retval] ppSurface
Type : IDirect3DSurface9**
Adresse d’un pointeur vers une interface IDirect3DSurface9 .
[in] pSharedHandle
Type : HANDLE*
Réservé. Définissez ce paramètre sur NULL. Ce paramètre peut être utilisé dans Direct3D 9 pour Windows Vista pour partager des ressources.
Valeur retournée
Type : HRESULT
Si la méthode réussit, la valeur de retour est D3D_OK. Si la méthode échoue, la valeur de retour peut être l’une des suivantes : D3DERR_NOTAVAILABLE, D3DERR_INVALIDCALL, D3DERR_OUTOFVIDEOMEMORY, E_OUTOFMEMORY.
Remarques
Les surfaces de cible de rendu sont placées dans la classe de mémoire D3DPOOL_DEFAULT.
La création de cibles de rendu multi-échantillonnables et verrouillables n’est pas prise en charge.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | d3d9.h (inclure D3D9.h) |
Bibliothèque | D3D9.lib |