3

ゲームウィンドウのサイズを変更してビューポートの高さが 0 になると、GC はスプライトバッチを破棄すると思います。これは何が起こるのですか?これを防ぐにはどうすればよいですか?

4

2 に答える 2

3
Form gameForm = (Form)Form.FromHandle(Window.Handle);
gameForm.MinimumSize = new System.Drawing.Size(800, 600);

短くて甘い!

于 2012-10-04T17:15:14.910 に答える
1

これと同じ問題があり、XNA が UnloadContent を呼び出してから LoadContent を呼び出して、リソースを再初期化することを示す簡単なデバッグがいくつかあります。私の推測では、GraphicsDevice などを失うため、リロードします。

LoadContent で GraphicsDevice に関連するものを作成すると、この問題が解決します。

この特定のケースでは、最小サイズを設定することをお勧めしますが、これが Xbox と Windows の間で移植可能なソリューションであるかどうかはわかりません。ただし、UnloadContent が呼び出された場合など、同様のことが発生する状況が他にもある可能性があるため、この方法に従うのがおそらく最善です。

于 2014-04-13T14:48:11.303 に答える