XNA游戏中的解决方案

时间:2012-12-03 02:34:29

标签: c# xna windows-runtime

我打算玩XNA游戏。

Windows商店有两个你支持的基本分辨率:1024x768和1366x768

但在那之后没有任何限制。

常见的建议是使用ViewBox来扩展您的内容。

但是XNA游戏没有视图框。它有一个绘制方法,您可以在其中呈现内容。

游戏(XNA或DirectX)适应不同分辨率的常用方法是什么?

我宁愿不必为每个和evey分辨率制作图像。这将是很多工作,我一定会错过一些。

有更好的方法吗?

2 个答案:

答案 0 :(得分:6)

GraphicsAdapter.DefaultAdapter.CurrentDisplayMode.Width.Height会为您提供当前的桌面分辨率。

然后,您可以更新Game.GraphicsDevice.Viewport个变量以使用这些设置。

上面的代码通常在Game1.cs构造函数

提供的链接记录了一种技术,使您的精灵,背景等看起来与分辨率无关(如果代码不是100%最新,理论应该是合理的)

http://msdn.microsoft.com/en-us/library/bb447674%28v=xnagamestudio.10%29.aspx

答案 1 :(得分:1)

我读了in a tutorial有两种不同的方法:

  • 将所有内容调整为新视口(即使更改宽高比)
  • 只是画出更多的环境

当然你可以混合两种:只要它仍然可以保持相同的宽高比(例如4:3或16:9),然后显示更多或更少的背景/环境,就可以调整所有内容。

如果每个人都有完全相同的视力(例如由于公平性),你也可以决定显示黑色内容而不是更多的环境,但在这种情况下,使用雾可能是更好的主意战争减少视力。