2

我对 XNA 有点陌生,但我会尽力解释我的问题。

我想通过设置graphics.PreferredBackBufferHeight和来更改游戏中的分辨率graphics.PreferredBackBufferWidth

graphics.PreferredBackBufferWidth设置为1920开始,然后graphics.PreferredBackBufferHeight设置为1080,游戏初始化良好。

但是,通过按一下按钮,我想graphics.PreferredBackBufferWidth设置为1280,然后graphics.PreferredBackBufferHeight设置为720。(两种分辨率均为16:9

但是,正如您所期望的那样,初始化graphics.PreferredBackBufferWidth并在 Initialize 方法中工作正常。graphics.PreferredBackBufferHeight但是通过更改这两个值,然后是graphics.ApplyChanges()OUTSIDE Initialize,屏幕要么以奇怪的方式拉伸,要么根本无法正常显示。

  • 如何在 Initialize 之外更改 BackBuffer 宽度/高度?
  • 如果我在初始化中设置这些,为什么它不一样?
  • 我必须再次调用 Initialize 吗?
4

1 回答 1

0

根据评论部分与 OP 的对话,似乎问题在于将图形设置为全屏,因为它正在拉伸屏幕以处理较小的分辨率。

于 2013-09-06T18:08:54.953 回答