Partager via


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

Voir aussi

IDirect3DDevice9