Re: ウィンドウモードでアスペクト比を維持したサイズ変更 ( No.1 ) |
- 名前:管理人 日時:2021/02/21 00:14
手元で SetWindowSizeChangeEnableFlag を TRUE にしても Aero Snap で最大化できないのですが、
SetWindowStyleMode で最大化できるモードにして試されたのでしょうか?
ともあれ Aero Snap で最大化されるとアスペクト比を維持したままレターボックスの状態で
最大化されるのは私の想定外で、偶然の産物です
なので、これを意図的に行うような機能はありません (・・;;
|
Re: ウィンドウモードでアスペクト比を維持したサイズ変更 ( No.2 ) |
- 名前:あいおい? 日時:2021/02/21 02:49
> 最大化されるのは私の想定外で、偶然の産物です
なるほど……綺麗に表示されるので、仕様通りの挙動かと思いました
DX.ChangeWindowMode(DX.TRUE);
DX.SetWindowSizeChangeEnableFlag(DX.TRUE);
DX.SetWindowStyleMode(7);
この設定でAero Snapで最大化することができます。
ttps://gyazo.com/b378516a2a9c2e63b769c55e728d8e6f
このようなウィンドウを、
ttps://gyazo.com/f164cafd854415ced0fd4f3afe27da36
こうすることができます。
仮想フルスクリーンを実装するにあたり、任意のサイズでレターボックス(縦横比を維持してできる限り大きく拡大しつつ)ができればいいなと思いました。
|
Re: ウィンドウモードでアスペクト比を維持したサイズ変更 ( No.3 ) |
- 名前:管理人 日時:2021/02/22 00:50
> DX.ChangeWindowMode(DX.TRUE);
> DX.SetWindowSizeChangeEnableFlag(DX.TRUE);
> DX.SetWindowStyleMode(7);
>
> この設定でAero Snapで最大化することができます。
ご返答ありがとうございます
手元でも確認することができました
> 仮想フルスクリーンを実装するにあたり、任意のサイズでレターボックス(縦横比を維持してできる限り大きく拡大しつつ)ができればいいなと思いました。
現状では SetGraphMode でデスクトップ画面と同じサイズを指定して、
自前で『縦横比を維持してできる限りゲーム画面を大きく描画する』処理を組むことで
ゲーム画面のサイズやレターボックスの表示を自由に表現することができます
|
Re: ウィンドウモードでアスペクト比を維持したサイズ変更 ( No.4 ) |
- 名前:あいおい?(解決) 日時:2021/02/23 20:18
>>> 現状では SetGraphMode でデスクトップ画面と同じサイズを指定して、
自前で『縦横比を維持してできる限りゲーム画面を大きく描画する』処理を組むことで
ゲーム画面のサイズやレターボックスの表示を自由に表現することができます
SetGraphMode関数で解像度を指定するのは制作中のアプリでは難しいので、
「縦横比を維持できる最大のウィンドウサイズ」を計算し、ボーダーレスにした状態で、画面中央に表示されるように位置を設定する
という実装にします。
この場合黒帯がつくことはありませんが最低限の変更で済むため、この方法を採用することにしました。
ありがとうございました!
|