Voici vos options:
Pour obtenir la taille du tampon arrière, utilisez:
GraphicsDevice.PresentationParameters.Bounds
(pour un rectangle) ou BackBufferWidth
et BackBufferHeight
.
Vous voulez la taille du tampon arrière si vous faites des choses comme définir des fenêtres, prendre des captures d'écran, etc.
Pour obtenir la fenêtre d'affichage , utilisez:
GraphicsDevice.Viewport.Bounds
(pour un rectangle) ou Width
et Height
.
La taille de la fenêtre d'affichage est celle que vous souhaitez utiliser lorsque vous effectuez réellement un rendu . Toutes les coordonnées que vous transmettez se SpriteBatch
trouvent dans l'espace client aligné sur les pixels en termes de fenêtre: (0,0) pour le pixel supérieur gauche à (largeur-1, hauteur-1) pour le coin inférieur droit. Si vous faites des trucs 3D, l'espace de projection va de (-1, -1) en bas à gauche de la fenêtre à (1,1) en haut à droite.
Vous pouvez ajuster la taille et la position de la fenêtre d'affichage à l'écran (pour faire des effets comme un écran partagé). Ainsi, bien qu'il soit initialisé à la taille du back-buffer, il n'est pas nécessairement toujours le même.
Si vous faites des trucs de mise en page d'interface, en particulier si vous allez exécuter sur la Xbox 360, sachez-le Viewport.TitleSafeArea
. Cela vous indique quelle région est définitivement visible sur les écrans qui peuvent couper une partie de la frontière.
Si, pour une raison quelconque, vous travaillez réellement avec la fenêtre de jeu elle-même, utilisez Game.GameWindow.ClientBounds
.
GraphicsDevice.Viewport.Bounds - cela renvoie Rectangle2D et il a les paramètres Largeur et Hauteur.
la source