Godot 4から…かどうかはちょっと怪しいのですが、指定したウィンドウのサイズよりも小さくなってしまう現象を解消する方法がわかったので記事にしておきます。
目次
4Kモニターを使っているとウィンドウが小さくなってしまう現象の解消方法
プロジェクト設定から “hiDPI” を無効にする
解消方法は簡単で、プロジェクト設定から「表示 > ウィンドウ > DPI」にある「hiDPIを許可」の値を「オフ」にするだけです。
以下の記事に書いてあったのを偶然見つけただけだったりします。
個人的に自作したスクリプト言語は VSCode で編集しているのですが、Godot 上で直接編集できたら良いなぁ…と思って読んでいたら、「おお、これは…!」と思った次第です。
HiDSPとは
そもそも HiDSP とは 特殊なモニターの機能で、高解像度のモニターでも文字が小さくならずに済む…というのがウリのようです。(“4Kモニター” かどうかはあまり関係ない)
ただ、モニターのサイズが小さめの4Kモニター、例えば私の環境では 27インチの4Kモニターを使っていますが…
このようなサイズが小さいモニターを使っていると、表示サイズも小さくなって縮小されてしまうようです。
そこで実際に調べてみたところ「サイズが縮小されてしまうのが困る場合はオフにした方が良いよ!(もしくは拡大倍率を大きくしてね!)」という情報がいくつか見つかりました。
HiDPI ディスプレイで画像を編集すると、画像が鮮明になりますが、サイズが小さくなります。画像を 200% 表示にすると、プレビューが大きくなります(「表示/200%」を選択)。
Adobe – HiDPI と Retina ディスプレイのサポートに関する FAQ
Cubase HiDPIモード:
HiDPIモードを有効にすると、iZotope製品がCubaseで動作する際に問題が発生することがあります。GUIの外観上の問題を解決するために、このモードをオフにすることをお勧めします。Ableton HiDPIモード:
iZotope製品: HiDPIモードへの対応について(Windows)
HiDPIモードを有効にすると、iZotope製品がAbletonで動作する際に問題が発生することがあります。GUIの外観の問題を解決するには、HiDPIモードをオフにすることをお勧めします。
ということで、HiDPIの恩恵を得られる環境…というのが限られそうなので、この項目は基本的にオフにしておいた方が良いのかもしれません(個人の感想)。
公式ドキュメントからの引用
By default, Godot projects aren’t considered DPI-aware by the operating system. This is done to improve performance on low-end systems, since the operating system’s DPI fallback scaling will be faster than letting the application scale itself (even when using the
viewport
stretch mode).However, the OS-provided DPI fallback scaling doesn’t play well with fullscreen mode. If you want crisp visuals on hiDPI displays or if project uses fullscreen, it’s recommended to enable Display > Window > Dpi > Allow Hidpi in the Project Settings.
Allow Hidpi is only effective on Windows and macOS. It’s ignored on all other platforms.
デフォルトでは、Godot プロジェクトはオペレーティング システムによって DPI 対応とみなされません。 これは、オペレーティング システムの DPI フォールバック スケーリングがアプリケーション自体をスケーリングするよりも高速になるため (ビューポート ストレッチ モードを使用している場合でも)、ローエンド システムのパフォーマンスを向上させるために行われます。
ただし、OS が提供する DPI フォールバック スケーリングは、フルスクリーン モードでは適切に機能しません。 HiDPI ディスプレイで鮮明なビジュアルが必要な場合、またはプロジェクトがフルスクリーンを使用している場合は、プロジェクト設定で [ディスプレイ] > [ウィンドウ] > [Dpi] > [Hidpi を許可] を有効にすることをお勧めします。
Hidpi を許可するは、Windows と macOS でのみ有効です。 他のすべてのプラットフォームでは無視されます。
Godot Docs – 複数の解像度 > hiDPI support
公式ドキュメントの情報としては、常にフルスクリーンで起動する場合には「HiDPIは許可」した方が良い、とのことでした。
たしかにそれであればウィンドウサイズの問題は解消されますし、画像や文字が鮮明になるので有効にした方が良いですね。