Aquí están tus opciones:
Para obtener el tamaño del búfer posterior, use:
GraphicsDevice.PresentationParameters.Bounds
(para un rectángulo) o BackBufferWidth
y BackBufferHeight
.
Desea el tamaño del búfer de respaldo si está haciendo cosas como configurar ventanas gráficas, tomar capturas de pantalla, etc.
Para obtener la ventana gráfica , use:
GraphicsDevice.Viewport.Bounds
(para un rectángulo) o Width
y Height
.
El tamaño de la ventana gráfica es lo que desea usar cuando realmente está renderizando cosas . Todas las coordenadas que pase SpriteBatch
están en el espacio del cliente alineado con píxeles en términos de la ventana gráfica: (0,0) para el píxel superior izquierdo a (ancho-1, altura-1) para la parte inferior derecha. Si está haciendo cosas en 3D, el espacio de proyección va de (-1, -1) en la parte inferior izquierda de la ventana gráfica a (1,1) en la parte superior derecha.
Puede ajustar el tamaño y la posición de la ventana gráfica en la pantalla (para hacer efectos como pantalla dividida). Por lo tanto, si bien se inicializa al tamaño del búfer de respaldo, no necesariamente es siempre el mismo.
Si está haciendo cosas de diseño de interfaz, especialmente si va a ejecutar en la Xbox 360, tenga en cuenta Viewport.TitleSafeArea
. Esto le indica qué región es definitivamente visible en las pantallas que pueden cortar parte del borde.
Si, por alguna razón, en realidad estás trabajando con la ventana del juego, úsala Game.GameWindow.ClientBounds
.