出于某种原因,我尝试过的关于解决方案独立性的所有内容并不像我希望的那样真正有效。大多数解决方案提出了一种方法来获得宽度和高度,然后使用它们的类,但结果总是截止图片(太大的图片)或左上角的图片,高度和宽度小于屏幕。
P.S。游戏全屏,但我们尝试了窗口,它也没有工作。
答案 0 :(得分:1)
这实际上是一个非常简单的修复方法。基本上,在某处创建一个RenderTarget
对象并对该对象进行所有绘制,然后将其调整大小到屏幕。
使用GraphicsDevice.SetRenderTarget(target)
更改渲染目标,然后执行所有绘制操作,然后通过将其设置为null
将其更改回后缓冲区。 RenderTargets实际上派生自Texture2D
,因此您可以将其用作参数,例如:SpriteBatch.Draw(renderTarget, Viewport.Bounds, Color.White)
,这将拉伸它以适应屏幕。