0

XNAを使ってゲームを作っています。スプライトを画面中央に揃えたい。フルスクリーンがfalseに設定されている場合、これはうまく機能します。しかし、IsFullScreen を true に設定すると機能しません。

コンソールをアクティブにして、画面サイズを印刷しました。サイズは良いです(1366 * 768)。また、マウス ポインターの現在の位置も出力します。右下隅にいるときは 1279*719 と表示されます。これが、スプライトが中央揃えになっていない理由です。なんで ?

width = GraphicsAdapter.DefaultAdapter.CurrentDisplayMode.Width;
height = GraphicsAdapter.DefaultAdapter.CurrentDisplayMode.Height;

_positionStart = new Vector2(width * 0.5F - _startButton.Width * 0.5F, height * 0.5F - 20);

PS:VS2012でXNA 4.0を使用しています

PS2 : 私の文法について申し訳ありません。私は流暢に英語を話せません :)

4

2 に答える 2

2

おそらく、スプライトの左上隅が画面の中央に描画されているためです。つまり、スプライトはわずかに右側に描画され、わずかに下にも描画されます。0.5 よりも小さい値、おそらく 0.45、またはそれ以下の値を試してください。これは役立つはずです。

于 2014-03-19T03:01:58.607 に答える