我对XNA有点陌生,但是我会尽力解释我的问题。
我想通过设置graphics.PreferredBackBufferHeight
和graphics.PreferredBackBufferWidth
来更改游戏中的分辨率。
通过将graphics.PreferredBackBufferWidth
设置为1920,并且将graphics.PreferredBackBufferHeight
设置为1080开始,游戏将进行初始化。
但是,通过按一个按钮,我要将graphics.PreferredBackBufferWidth
设置为1280,将graphics.PreferredBackBufferHeight
设置为720。(两个分辨率均为16:9)
但是,如您所料,在Initialize方法中初始化graphics.PreferredBackBufferWidth
和graphics.PreferredBackBufferHeight
可以正常工作。
但是,通过更改两个值,然后更改graphics.ApplyChanges()
,进行OUTSIDE Initialize,屏幕要么以奇怪的方式拉伸,要么根本无法正常显示。
如何在初始化之外更改BackBuffer的宽度/高度?
如果我在Initialize中进行了设置,为什么它不一样?
我是否需要再次致电Initialize?
最佳答案
基于与OP在注释部分的对话,似乎出现了将图形设置为全屏的问题,因为它会拉伸屏幕以处理较小的分辨率。
关于c# - 在XNA中更改BackBuffer的高度/宽度-不良结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18663311/