あなたはgraphicsDeviceが必要ですが、GraphicsDevicesやその他のものをたくさん作成するのは面倒です。だからあなたのゲームであなたが望むもの(画面の幅など)の価値を渡す本当に簡単な方法は、あなたが望む任意のクラスで使うことができる "GlobalVariable"を作成することです。ここでこの簡単なやり方を達成する方法があります。
ファーストは、新しいクラスを作成し、それはこのようGlobalClass呼び出す:
class GlobalClass
{
}
今すぐアクセスの公開方法でプライベート変数を追加します。ここでは、Screen HeightとWidthの2つの変数を作成します。
class GlobalClass
{
private static float screenWidth;
private static float screenHeight;
public static float ScreenWidth
{
get { return screenWidth; }
set { screenWidth = value; }
}
public static float ScreenHeight
{
get { return screenHeight; }
set { screenHeight = value; }
}
}
完了です!このクラスを使用すると、ゲームのどこにでも2つの変数を渡すことができます。だから、戻ってあなたの主要なクラス(game1.cs)へと更新Methodeのアップデートでは、このような画面の高さと画面の幅と論文変数の値を行く:
今
GlobalClass.ScreenWidth = graphics.PreferredBackBufferWidth;
GlobalClass.ScreenHeight = graphics.PreferredBackBufferHeight;
バックカスタムクラスにしてコードを置き換えますこれは
int TextureHeight = GlobalClass.ScreenWidth;
どこでも好きな値を渡すことができます。ちょうどその値を使用する前に、GlobalClass.ScreenWidthを更新してください。
説明については、[この回答](http://gamedev.stackexchange.com/questions/8687/how-to-find-the-window-size-in-xna/8694#8694)をご覧くださいあなたのオプションはレンダリングのためのスクリーンサイズを得るためのものです(通常は 'Viewport'が必要です)。 –