2017-03-17 13 views
0

モノゲームに問題があります。現在、私は次のような解像度を読んでいます:xna/monogameのウィンドウ10の再スケーリングを無効にする

public Game1() 
    { 
     graphics = new GraphicsDeviceManager(this); 
     Content.RootDirectory = "Content"; 
     gameState = new GameState(All_Textures, AllSpritefontTexts, oldState, oldMouse); //All textures have a key, with as return: texture, starting point, clickarea 
    } 

    protected override void Initialize() 
    { 
     base.Initialize(); 
     oldState = Keyboard.GetState(); 
     oldMouse = Mouse.GetState(); 
     IsMouseVisible = true; //You can see the cursor 
     //graphics.IsFullScreen = true;                //DISABLED FOR DEVELOPING REASONS 
     graphics.PreferredBackBufferHeight = GraphicsAdapter.DefaultAdapter.CurrentDisplayMode.Height; //Set xna resolution height to curr screen resolution 
     graphics.PreferredBackBufferWidth = GraphicsAdapter.DefaultAdapter.CurrentDisplayMode.Width; //Set xna resolution width to curr screen resolution 
     graphics.ApplyChanges(); 
    } 

私は自分のプロジェクトで作業を続け、最近他のコンピュータでゲームのテストを開始しました。画像のように、多くのコンピュータには10倍の倍率のウィンドウがあります。 image

この結果、私のモノゲームのイメージとスプライトのフォントが、誤って配置され、重複してしまいます。私の質問は、「モノグラムでこの倍率をプログラマチックに無効にするにはどうしたらよいですか?あなたは私の質問に答えることができる前に確認するために多くのコードが必要な場合

、私のアプリケーション全体がここhttps://github.com/FireStormHR/SeriousGaming

答えて

0

を発見された問題は、あなたがではなく、あなたの画面のサイズに解像度を設定しようとしているということです、あなたのビューポート。デフォルトレンダリングターゲットの解像度がビューポートより大きい場合は、適切に描画されません。ビューポートは画面より大きくすることはできません。 幅と高さにGraphicsDevice.Viewport.WidthとGraphicsDevice.Viewport.Heightを使用すると、目的の結果が得られます。

関連する問題