如何在XNA中的每个帧之后不刷新rendertarget

时间:2012-01-15 21:48:02

标签: xna clear rendertarget

例如,我在(10,10)绘制一个圆,然后在下一帧(20,20)绘制另一个圆。 (10,10)处的圆圈不再可见。

我不是在调用graphicsdevice.clear。

有没有办法让以前绘制的图形不被清除?

我将它们绘制成一个seconary rendertarget,以便我可以将它作为背景。

任何想法?

1 个答案:

答案 0 :(得分:3)

初始化RenderTarget2D时,您需要使用RenderTargetUsage.PreserveContents

// Disregard the arguments up to RenderTargetUsage
RenderTarget2D r = new RenderTarget2D(GraphicsDevice,
                                      graphics.PreferredBackBufferWidth,
                                      graphics.PreferredBackBufferHeight,
                                      false,
                                      RenderTargetUsage.PreserveContents);