Pregunta

¿Cómo puedo ajustar I el tamaño de la ventana en XNA.

Por defecto se inicia en una resolución de 800x600.

¿Fue útil?

Solución 2

Me di cuenta de que es necesario establecer la

GraphicDevice.PreferredBackBufferHeight = height;
GraphicDevice.PreferredBackBufferWidth = width;

Al hacer esto en el constructor de la clase de juego que funciona, pero cuando intenta hacer a este fuera el constructor también hay que llamar

GraphicsDevice.ApplyChanges();

Además de tener pantalla completa (que no está realmente funcionando correctamente durante la depuración) se puede utilizar

if (!GraphicsDevice.IsFullScreen)
   GraphicsDevice.ToggleFullScreen();

Otros consejos

A partir de XNA 4.0 esta propiedad se encuentra ahora en la GraphicsDeviceManager. Es decir. este código se iría en el constructor de su juego.

graphics = new GraphicsDeviceManager(this);
graphics.IsFullScreen = false;
graphics.PreferredBackBufferHeight = 340;
graphics.PreferredBackBufferWidth = 480;

// if changing GraphicsDeviceManager properties outside 
// your game constructor also call:
// graphics.ApplyChanges();

Esta solución funciona en XNA 3.0. Sólo hay que poner en el constructor de su objeto de juego:

// Resize the screen to 1024 x 768.
IntPtr ptr = this.Window.Handle;
System.Windows.Forms.Form form = (System.Windows.Forms.Form)System.Windows.Forms.Control.FromHandle(ptr);
form.Size = new System.Drawing.Size(1024, 768);

graphics.PreferredBackBufferWidth = 1024;
graphics.PreferredBackBufferHeight = 768;

graphics.ApplyChanges();
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top