Partager via


Méthode IDirect3DDevice9 ::BeginScene (d3d9.h)

Commence une scène.

Syntaxe

HRESULT BeginScene();

Valeur de retour

Type : HRESULT

Si la méthode réussit, la valeur de retour est D3D_OK. La méthode échoue avec D3DERR_INVALIDCALL si IDirect3DDevice9 ::BeginScene est appelé alors que déjà dans une paire IDirect3DDevice9 ::BeginScene/IDirect3DDevice9 ::EndScene . Cela se produit uniquement lorsque IDirect3DDevice9 ::BeginScene est appelé deux fois sans appeler IDirect3DDevice9 ::EndScene.

Remarques

Les applications doivent appeler IDirect3DDevice9 ::BeginScene avant d’effectuer un rendu et doivent appeler IDirect3DDevice9 ::EndScene une fois le rendu terminé et avant d’appeler À nouveau IDirect3DDevice9 ::BeginScene .

Si IDirect3DDevice9 ::BeginScene échoue, l’appareil n’a pas pu démarrer la scène et il n’est pas nécessaire d’appeler IDirect3DDevice9 ::EndScene. En fait, les appels à IDirect3DDevice9 ::EndScene échouent si le IDirect3DDevice9 ::BeginScene précédent a échoué. Cela s’applique à toute application qui crée plusieurs chaînes d’échange.

Il doit y avoir une paire IDirect3DDevice9 ::BeginScene/IDirect3DDevice9 ::EndScene entre les appels successifs à présenter ( IDirect3DDevice9 ::P resent ou IDirect3DSwapChain9 ::P resent). IDirect3DDevice9 ::BeginScene doit être appelé une fois avant qu’un rendu ne soit effectué, et IDirect3DDevice9 ::EndScene doit être appelé une fois que le rendu d’une image a été soumis au runtime. Plusieurs paires IDirect3DDevice9 ::BeginScene/IDirect3DDevice9 ::EndScene entre les appels au présent sont légales, mais le fait d’avoir plusieurs paires peut entraîner un problème de performances. Pour activer le parallélisme maximal entre le processeur et l’accélérateur graphique, il est avantageux d’appeler IDirect3DDevice9 ::EndScene aussi loin que possible d’appeler présent.

Configuration requise

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

Voir aussi

IDirect3DDevice9