Partager via


IDirect3DDevice9::P resent, méthode (d3d9.h)

Présente le contenu de la mémoire tampon suivante dans la séquence de mémoires tampons d’arrière-mémoire appartenant à l’appareil.

Syntaxe

HRESULT Present(
  [in] const RECT    *pSourceRect,
  [in] const RECT    *pDestRect,
  [in] HWND          hDestWindowOverride,
  [in] const RGNDATA *pDirtyRegion
);

Paramètres

[in] pSourceRect

Type : const RECT*

Pointeur vers une valeur qui doit être NULL , sauf si la chaîne d’échange a été créée avec D3DSWAPEFFECT_COPY. pSourceRect est un pointeur vers une structure RECT contenant le rectangle source. Si la valeur est NULL, toute la surface source est présentée. Si le rectangle dépasse la surface source, le rectangle est coupé à la surface source.

[in] pDestRect

Type : const RECT*

Pointeur vers une valeur qui doit être NULL , sauf si la chaîne d’échange a été créée avec D3DSWAPEFFECT_COPY. pDestRect est un pointeur vers une structure RECT contenant le rectangle de destination, dans les coordonnées du client de fenêtre. Si la valeur est NULL, la zone cliente entière est remplie. Si le rectangle dépasse la zone cliente de destination, le rectangle est coupé dans la zone cliente de destination.

[in] hDestWindowOverride

Type : HWND

Pointeur vers une fenêtre de destination dont la zone cliente est considérée comme cible pour cette présentation. Si cette valeur est NULL, le runtime utilise le membre hDeviceWindow de D3DPRESENT_PARAMETERS pour la présentation.

[in] pDirtyRegion

Type : const RGNDATA*

La valeur doit être NULL , sauf si la chaîne d’échange a été créée avec D3DSWAPEFFECT_COPY. Pour plus d’informations sur les chaînes d’échange, consultez Retourner des surfaces (Direct3D 9) et D3DSWAPEFFECT. Si cette valeur n’est pas NULL, la région contenue est exprimée en coordonnées de mémoire tampon arrière. Les rectangles dans la région sont l’ensemble minimal de pixels qui doivent être mis à jour. Cette méthode prend ces rectangles en compte lors de l’optimisation de la présentation en copiant uniquement les pixels dans la région, ou un ensemble de rectangles correctement développé. Il s’agit d’une aide à l’optimisation uniquement, et l’application ne doit pas s’appuyer sur la région copiée exactement. L’implémentation peut choisir de copier l’intégralité du rectangle source.

Valeur retournée

Type : HRESULT

Les valeurs de retour possibles sont les suivantes : D3D_OK ou D3DERR_DEVICEREMOVED (voir D3DERR).

Notes

Si nécessaire, une opération d’étirement est appliquée pour transférer les pixels du rectangle source vers le rectangle de destination dans la zone cliente de la fenêtre cible.

Present échoue, renvoyant D3DERR_INVALIDCALL, s’il est appelé entre les paires BeginScene et EndScene, sauf si la cible de rendu n’est pas la cible de rendu actuelle (par exemple, la mémoire tampon d’arrière-mémoire que vous obtenez en créant une chaîne d’échange supplémentaire). Il s’agit d’un nouveau comportement pour Direct3D 9.

Spécifications

   
Plateforme cible Windows
En-tête d3d9.h (inclure D3D9.h)
Bibliothèque D3D9.lib

Voir aussi

IDirect3DDevice9

Appareils perdus (Direct3D 9)

Multihead (Direct3D 9)

Réinitialiser