2009-04-06 5 views

答えて

58

は、私はあなたがそれが動作ゲームクラスのコンストラクタでこれを行うと、あなたが

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

を設定する必要があることが判明していますが、コンストラクタの外にこれを行うしようとすると、また

を呼び出す必要がありますさらに
GraphicsDevice.ApplyChanges(); 

は、あなたが使用することができます(デバッグ中に本当に正しく動作していない)フルスクリーンを持っている

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

この回答は少し古くなっていますので、私は以下のFuexの回答を確認することをお勧めします。ほとんど同じですが、コードは編集なしでコンパイルされます。 –

+0

これは最新バージョンで正常に動作します。 – krowe

-1

このソリューションは、XNA 3.0で機能します。このプロパティは、今GraphicsDeviceManagerで発見されたXNA 4.0のとおり

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

:ちょうどあなたのゲームオブジェクトのコンストラクタでそれを置きます。すなわち、 このコードはゲームのコンストラクタに入ります。

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

Sjors Miltenburgの答えは、現在古くなっています。 Fuexによるこの回答は、XNA 4.0には適切です。 – Xonatron

+0

あなたはまだこの後にgraphics.ApplyChanges()をしたいと思うでしょう。 –

関連する問題