【问题标题】:Resolutions in a XNA GameXNA 游戏中的分辨率
【发布时间】:2012-11-20 12:21:34
【问题描述】:

我打算制作一个 XNA 游戏。

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

但之后就没有限制了。

常见的建议是使用 ViewBox 来为您缩放内容。

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

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

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

有没有更好的办法?

【问题讨论】:

  • 顺便说一句,您不能使用 XNA 制作 Windows 商店应用程序。 (source)
  • @GameScripting - 但是 MonoGame(XNA 的开放实现)确实支持 Windows Phone 8 和 Windows 8 RT。微软会不会允许那些在 Windows 应用商店中? (monogame.codeplex.com)
  • 我想他们会允许的,微软的 XNA 只是不支持(技术上)。

标签: c# xna windows-runtime


【解决方案1】:

GraphicsAdapter.DefaultAdapter.CurrentDisplayMode.Widthand.Height 会给你当前的桌面分辨率。

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

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

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

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

【讨论】:

    【解决方案2】:

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

    • 根据新视口调整所有内容(即使纵横比发生变化)
    • 只是在周围画更多的环境

    当然,您可以将两者混合使用:调整所有内容的大小,只要它仍然可以保持相同的纵横比(例如 4:3 或 16:9),然后或多或少地显示背景/环境。

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

    【讨论】:

      猜你喜欢
      • 2013-09-09
      • 1970-01-01
      • 2012-05-08
      • 2014-05-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-24
      • 2017-02-16
      相关资源
      最近更新 更多