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 |