如何使用C#和XNA制作屏幕截图?

Neo*_*mex 5 c# xna xna-4.0


如何在全屏模式下运行游戏时使用C#和XNA制作屏幕截图并将其保存到硬盘?

And*_*ell 7

在XNA 4.0更改了 API .

如果您在HiDef配置文件(Xbox 360和更新的Windows计算机)上运行,则可以使用GraphicsDevice.GetBackBufferData.

为了使数据保存变得容易,您可以使用将其输出放入a Texture2D.SetData然后使用SaveAsPngSaveAsJpeg(这比它需要的稍慢,因为它还将数据发送回GPU - 但它很简单) .

如果您正在使用Reach配置文件,则必须将场景渲染为a RenderTarget2D.我在这里的答案应该给你一个很好的起点.