Pourquoi Direct3D application est plus performante en mode plein écran?

Les performances d'une application Direct3D semble être beaucoup mieux en mode plein écran par rapport à la mode fenêtré. Quelles sont les techniques des raisons derrière tout cela?

Je suppose que cela a quelque chose à voir avec le fait qu'un plein écran de l'application peut acquérir le contrôle exclusif de l'affichage. Mais pourquoi l'application ne peut pas acquérir le contrôle exclusif de partie de l'écran (fenêtre) et d'avoir les mêmes avantages de performance?

  • Par curiosité, avez-vous essayé que sur Vista? Avec DWM activé, j'ai éprouvé de la fenêtre en mode vitesse plutôt supérieur sur mon système dans une application XNA (plus élevé, car les moins de remplissage taux est nécessaire, mais le point est qu'il n'est pas plus lent).
  • Oui je suis sous Vista avec DWM activé. Je comprends aussi que Vista désactive DWM lorsqu'un plein écran de l'application est active pour libérer des ressources.
  • Vista désactive DWM uniquement si la demande est incompatible. J'ai quelques jeux en cours d'exécution fine avec Aero Glass quand en plein écran (visible sur les autres moniteurs). Si, en général, c'est vrai, la plupart des jeux de désactiver DWM.
  • Depuis Windows 8, vous pouvez avoir votre gâteau et le manger trop avec DirectFlip. Fondamentalement DWM détecte si la composition serait un no-op et utilise à la place de votre framebuffer directement, en vous donnant les mêmes performances.
InformationsquelleAutor smt | 2008-11-20