MonoGame 3.01 と SwapChainBackgroundPanel を使用して XAML と統合する Windows 8 ゲームを作成しています。私のアセットは 16:9 のアスペクト比に最適化されていますが、Win8 デバイスの解像度が異なるため、4:3 もサポートする必要があります。
現在、次の問題に直面しています。
ゲームを 2 番目のモニターにドラッグしても画面のサイズが変更されない
_graphics.PreferredBackBufferWidth = (int)width; _graphics.PreferredBackBufferHeight = (int)height; _graphics.ApplyChanges();
SwapChainBackgroundPanel (GamePage) では、サイズの変更に反応します
void GamePage_SizeChanged(object sender, SizeChangedEventArgs e)
{
Game.SetBackBuffer(e.NewSize.Width, e.NewSize.Height);
}
しかし、何も起こらず、初期 (ゲームが初期化された後) のバック バッファーの変更のみが適用されるようです。
- 拡大して埋めるのではなく、縦横比を維持する方法はありますか。レターボックスで?
Windows 8 で複数の解像度 (スナップ ビューを含む) をサポートするためのベスト プラクティスは何ですか?
編集: 明確にするために- GamePage_SizeChanged が実行されているだけで、効果がないように見える _graphics.ApplyChanges()