Comment puis-je définir la taille de la fenêtre / écran dans xna?

Comment puis-je ajuster la taille de la fenêtre dans XNA.

Par défaut, il démarre dans une résolution 800x600.

53
demandé sur Alex B 2009-04-06 11:04:25

4 réponses

À partir de XNA 4.0, Cette propriété se trouve maintenant sur le GraphicsDeviceManager. IE. ce code irait dans le constructeur de votre jeu.

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();
70
répondu James 2014-04-21 20:24:55

, j'ai découvert que vous devez définir la

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

Lorsque vous faites cela dans le constructeur de la classe de jeu, il fonctionne, mais lorsque vous essayez de faire cela à l'extérieur du constructeur, vous devez également appeler

GraphicsDevice.ApplyChanges();

En outre, pour avoir un plein écran (qui ne fonctionne pas vraiment correctement pendant le débogage), vous pouvez utiliser

if (!GraphicsDevice.IsFullScreen)
   GraphicsDevice.ToggleFullScreen();
58
répondu pinckerman 2013-11-25 15:06:56
-1
répondu Nikwin 2009-07-27 07:45:06

Cette solution fonctionne dans XNA 3.0. Il suffit de le mettre dans le constructeur de votre objet de jeu:

// 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();
-1
répondu jabs 2013-11-25 15:07:13