差分

ナビゲーションに移動 検索に移動

MonoGameで解像度を取得する

53 バイト追加, 2018年8月28日 (火) 01:48
編集の要約なし
たとえばGameクラス(MonoGameにおける[[エントリポイント]]に相当するクラス)で以下のように解像度の設定を行ったとする。
<pre syntaxhighlight lang="csharp">
GraphicsDeviceManager.IsFullScreen = false;
GraphicsDeviceManager.PreferredBackBufferWidth = 720 ;
GraphicsDeviceManager.PreferredBackBufferHeight = 1232 ;
GraphicsDeviceManager.ApplyChanges();
</presyntaxhighlight >
これがWindowsやMacで実行した場合はよほどのことが無い限り要望した解像度になるだろう。しかし[[Android]]では[[カタログスペック]]の解像度ではなく、上部のステータスバーや下部のナビゲーションバーを除いた領域が実効解像度となるため、それらを考慮した「もっとも近似する解像度」が設定される(詳細は「[[MonoGameで解像度を設定する]]」を参照)。ホームボタンが物理ボタンの機種がほとんどなくなったので注意しよう。
実効解像度は以下のプロパティで取得できる。
<pre syntaxhighlight lang="csharp">
GraphicsDevice.PresentationParameters.BackBufferWidth;
GraphicsDevice.PresentationParameters.BackBufferHeight;
</presyntaxhighlight > ちなみにカタログスペックの解像度は以下のプロパティで取得できる。<syntaxhighlight>
//
GraphicsDevice.DisplayMode.Width;
匿名利用者

案内メニュー