トップページ > 記事閲覧
Debug時とRelease時でゲーム画面サイズが変わる
名前:parsley 日時: 2019/03/28 01:17

いつも楽しく使わせて頂いています。 現在visualstudio2017を用いて800×800画面サイズのゲームを作っているのですが、 Release時とDebug時でゲーム画面のサイズが異なってしまいます。 Debug時には正常に800×800で画面が表示されるのですが、 Release時にはゲームのタイトル部分が見切れるくらい画面が大きく表示されてしまい、文字の表示もぼやけた感じになってしまいます。 また、Release時に大きく表示された画面を SetWindowSizeChangeEnableFlag(TRUE, TRUE) を用いてDebug時のサイズと同等まで手動で縮小すると、 文字が潰れ読めなくなってしまいます。 SetGraphModeの数値を800から下げると画面自体は小さくなるのですが、画面に表示される文字が左半分程度しか表示されず見切れてしまいます。 また、SetWindowSizeExtendRateを用いて縮小表示すると、文字が潰れ読めなくなってしまいます。 Release時のゲーム画面サイズをDebug時と同等にしたい場合、どの様に設定したら良いのでしょうか? または、ゲーム画面を縮小しても文字表示が乱れないように記述する方法はあるでしょうか? ---------------------------------------------------------------------------- 設定環境 ・PC設定  解像度 2560×1440  テキスト・アプリのサイズ 150%  システムの種類 64ビット オペレーティング システム、x64 ベース プロセッサ ・開発環境  visual studio 2017  DxLib_VC Ver 3.20c  Debug x86 ローカル windows デバッガー  Release x86 ローカル windows デバッガー ---------------------------------------------------------------------------- プログラム1 (起動時の画面設定をしている部分) int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { int act_check = 1; while (act_check == 1) { act_check = main(); } DxLib_End(); // DXライブラリ使用の終了処理 return act_check; // ソフトの終了 } int main(void) { // ログファイルを出力しないように SetOutApplicationLogValidFlag(FALSE); // ウインドウモードで起動 ChangeWindowMode(TRUE); // 画面サイズを800×800にする SetGraphMode(800, 800, 32); // 画面サイズを可変にする SetWindowSizeChangeEnableFlag(TRUE, TRUE); // DXlib初期化 if (DxLib_Init() == -1) { return -1; } // 描画先を裏画面にする SetDrawScreen(DX_SCREEN_BACK); // フォントサイズを指定 SetFontSize(20); // 描画文字にアンチエイリアスを適用 ChangeFontType(DX_FONTTYPE_ANTIALIASING_4X4); ---------------------------------------------------------------------------- プログラム2 (文字の描画をしている場所) while(1){ // キーの押下状態を取得 GetHitKeyStateAll(input); // 迷路の選択 choose_Maze(); // 次に進む if (input[KEY_INPUT_RETURN] == 1) { WaitTimer(100); break; } // 画面をクリア ClearDrawScreen(); // 文字列の描画 DrawFormatString(170, 140, GetColor(255, 255, 255), "迷路を選択して下さい [選択キーで迷路を選ぶ]); DrawFormatString(170, 190, GetColor(255, 255, 255), "Enterキーで次に進む Escキーで前に戻る); //メイン画面に転送 ScreenFlip(); //ウィンドウメッセージを処理 if (ProcessMessage() == -1) break; } // 迷路情報を処理 Maze_convert(); ----------------------------------------------------------------------------
メンテ

Page: 1 |

Re: Debug時とRelease時でゲーム画面サイズが変わる ( No.1 )
名前:管理人 日時:2019/03/30 01:53

DPI設定(『テキスト・アプリのサイズ』の設定)が100%ではないのが関係していそうです VisualStudio2017でプロジェクトを開いた状態でメニューから『プロジェクト』→『プロパティ』で プロジェクトのプロパティを開いて、左側の項目から『構成プロパティ』→『マニフェストツール』→『入出力』 を選ぶと右側に表示される『DPI認識』が『構成:Release、プラットフォーム:x86』ではどのような設定に なっているかを確認してみてください デフォルトでは『なし』になっているはずですが、こちらが『なし』以外の『高いDPI認識』や 『モニターごとの高いDPI認識』になっていると本件のような現象が発生するかもしれません
メンテ
Re: Debug時とRelease時でゲーム画面サイズが変わる ( No.2 )
名前:parsley(解決) 日時:2019/03/31 22:31

管理人様、お忙しい中の対応ありがとうございます。 『Release』タブの『DPI認識』が『なし』となっていたのを、『モニターごとの高いDPI認識』または『高いDPI認識』に変更した事で、 Release時の画面サイズがDebug時の物と同じ大きさになりました。 ご教示いただきありがとうございました!
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存