Question

How can I adjust the size of the window in XNA.

Default it starts in a 800x600 resolution.

Was it helpful?

Solution 2

I found out that you need to set the

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

When you do this in the constructor of the game class it works, but when you try do to this outside the constructor you also need to call

GraphicsDevice.ApplyChanges();

Furthermore to have fullscreen (which is not really working correctly while debugging) you can use

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

OTHER TIPS

As of XNA 4.0 this property is now found on the GraphicsDeviceManager. Ie. this code would go in your Game's constructor.

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();

This solution works in XNA 3.0. Just put it in your game object's constructor:

// 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();
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top