D3DPRESENT
Décrit la relation entre le taux d’actualisation de l’adaptateur et la vitesse à laquelle les opérations Présente ou Présente sont effectuées. Ces valeurs servent également de valeurs d’indicateur pour le champ PresentationIntervals de D3DCAPS9.
Constant | Description |
---|---|
|
Utilisez la mémoire tampon frontale comme surface source et cible pendant le rendu. Une synchronisation d’images est planifiée, mais la surface affichée ne change pas. Cet indicateur n’est disponible que lorsque l’application est en mode plein écran et que D3DSWAPEFFECT_FLIPEX a été spécifié. Cet indicateur est disponible dans Direct3D 9Ex uniquement. |
|
Une présentation ne peut pas être planifiée par un appareil de hal. Si cet indicateur est défini dans un appel à Présent et que le matériel est occupé à traiter ou à attendre un intervalle de synchronisation vertical, Présent retourne D3DERR_WASSTILLDRAWING pour indiquer que l’opération de fente est incomplète. |
|
Réservé. |
|
D3DPRESENT_INTERVAL_IMMEDIATE est appliqué à cet appel présent . Cet indicateur ne peut être spécifié que lors de l’utilisation de D3DSWAPEFFECT_FLIPEX. Les comportements de présentation fenêtré et en plein écran sont identiques. Cela est particulièrement utile pour les applications multimédias qui souhaitent ignorer des images qui ont été détectées comme tardives et présenter des images ultérieures au moment de la composition. Une erreur de paramètre non valide est retournée si cet indicateur n’est pas spécifié de manière incorrecte. Lorsque plusieurs images consécutives avec D3DPRESENT_FORCEIMMEDIATEs sont mises en file d’attente, seule la dernière image s’affiche, à la fois pour la présentation fenêtré et en plein écran. Cet indicateur est disponible dans Direct3D 9Ex sur les systèmes d’exploitation Windows 7 ou ultérieurs. Lorsque vous utilisez D3DSWAPEFFECT_FLIPEX, chaque image présentée à l’aide de D3DPRESENT_INTERVAL_IMMEDIATE ou D3DPRESENT_INTERVAL_FORCEIMMEDIATE remplace l’intervalle présent de l’image précédente. Par exemple, si vous placez en file d’attente les images suivantes à l’aide des effets d’échange suivants : frame A (D3DPRESENT_INTERVAL_ONE), frame B(D3DPRESENT_INTERVAL_ONE), frame C(D3DPRESENT_INTERVAL_ONE), frame D(D3DPRESENT_INTERVAL_FORCEIMMEDIATE), frame D remplace l’intervalle actuel du frame C. Les images affichées par intervalle actuel sont l’image A, l’image B (image C remplacée par) l’image D. Consultez la section Notes. |
|
Cela équivaut presque à D3DPRESENT_INTERVAL_ONE. Consultez la section Remarques. |
|
Le pilote attend la période de retracement vertical (le runtime « suit le faisceau » pour éviter la déchirure).
Les opérations présentes ne seront pas affectées plus fréquemment que l’actualisation de l’écran ; le runtime se termine au plus une opération Présente par période d’actualisation de l’adaptateur. Cela équivaut à utiliser D3DSWAPEFFECT_COPYVSYNC dans DirectX 8.1. Cette option est toujours disponible pour les chaînes d’échange fenêtrés et plein écran. Consultez la section Remarques. |
|
Le pilote attend la période de retracement vertical.
Les opérations présentes ne seront pas affectées plus fréquemment que chaque actualisation de l’écran sur deux. Vérifiez la limite PresentationIntervals (voir D3DCAPS9) pour voir si D3DPRESENT_INTERVAL_TWO est pris en charge par le pilote. |
|
Le pilote attend la période de retracement vertical.
Les opérations présentes ne seront pas affectées plus fréquemment que chaque actualisation de l’écran sur trois. Vérifiez la limite PresentationIntervals (voir D3DCAPS9) pour voir si D3DPRESENT_INTERVAL_THREE est pris en charge par le pilote. |
|
Le pilote attend la période de retracement vertical.
Les opérations présentes ne seront pas affectées plus fréquemment que chaque quatrième actualisation de l’écran. Vérifiez le membre PresentationIntervals (voir D3DCAPS9) pour voir si D3DPRESENT_INTERVAL_FOUR est pris en charge par le pilote. |
|
Le runtime met immédiatement à jour la zone cliente de la fenêtre et peut le faire plusieurs fois pendant la période d’actualisation de l’adaptateur. Cela équivaut à utiliser D3DSWAPEFFECT_COPY dans DirectX 8.
Les opérations présentes peuvent être affectées immédiatement. Cette option est toujours disponible pour les chaînes d’échange fenêtrés et plein écran. Consultez la section Remarques. |
|
Le contenu de la mémoire tampon arrière à présenter se trouve dans l’espace de couleurs linéaire.
|
D3DPRESENT_VIDEO_RESTRICT_TO_MONITOR |
Clipse le contenu rendu sur le moniteur/l’appareil ciblé par l’adaptateur, affiche les miniatures du contenu dans la vue Flip3D et les miniatures de la barre des tâches sur d’autres moniteurs. Cet indicateur est disponible dans Direct3D 9Ex uniquement. Pour plus d’informations sur cette fonctionnalité de Windows Vista, consultez Gestionnaire de fenêtres de bureau . Si vous n’exécutez pas en mode composition de bureau, l’indicateur affiche le même comportement que D3DPRESENTFLAG_DEVICECLIP. Note: Cet indicateur ne doit être utilisé qu’avec un effet d’échange D3DSWAPEFFECT_FLIPEX. L’utilisation de cet indicateur avec d’autres effets d’échange est déconseillée et peut ne pas fonctionner dans les versions ultérieures de Windows. |
|
Mises à jour la position de superposition ou les données colorkey sans provoquer un retournement réel et sans modifier la durée d’affichage de l’image. Cet indicateur est disponible dans Direct3D 9Ex uniquement. |
|
Désactive le matériel de superposition. Cet indicateur est disponible dans Direct3D 9Ex uniquement. |
|
Redessine les données colorkey. Cet indicateur est disponible dans Direct3D 9Ex uniquement. |
Notes
Le mode fenêtré prend en charge les D3DPRESENT_INTERVAL_DEFAULT, les D3DPRESENT_INTERVAL_IMMEDIATE et les D3DPRESENT_INTERVAL_ONE. D3DPRESENT_INTERVAL_DEFAULT et les D3DPRESENT_INTERVAL_ONE sont presque équivalents (voir les informations sur la résolution du minuteur ci-dessous). Ils fonctionnent de la même manière que COPY_VSYNC en ce qu’il n’y en a qu’un seul présent par image, et ils empêchent les déchirures avec le suivi de faisceau. En revanche, D3DPRESENT_INTERVAL_IMMEDIATE tente de fournir un taux de présentation illimité.
Le mode plein écran prend en charge une utilisation similaire au mode fenêtré en prenant en charge D3DPRESENT_INTERVAL_IMMEDIATE quel que soit le taux d’actualisation ou l’effet d’échange. D3DPRESENT_INTERVAL_DEFAULT utilise la résolution du minuteur système par défaut, tandis que le D3DPRESENT_INTERVAL_ONE appelle timeBeginPeriod pour améliorer la résolution du minuteur système. Cela améliore la qualité de la synchronisation verticale, mais consomme un peu plus de temps de traitement. Les deux paramètres tentent de se synchroniser verticalement.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête |
|