我试图在运行时更改RenderTargets,因此我可以在运行时绘制一些元素,操纵它们,然后最终将纹理绘制到屏幕上.问题是,如果我在运行时更改RenderTarget,屏幕会变为紫色.这是我在Draw中得到的代码:
RenderTarget2D tempTarget = new RenderTarget2D(GraphicsDevice, 128, 128, 1,
GraphicsDevice.DisplayMode.Format, GraphicsDevice.PresentationParameters.MultiSampleType,
GraphicsDevice.PresentationParameters.MultiSampleQuality, RenderTargetUsage.PreserveContents);
GraphicsDevice.SetRenderTarget(0, tempTarget);
GraphicsDevice.Clear(ClearOptions.Target, Color.SpringGreen, 0, 0);
GraphicsDevice.SetRenderTarget(0, null);
Run Code Online (Sandbox Code Playgroud)
如果我在运行时创建RenderTarget似乎并不重要(我确实需要在运行时创建内存中的纹理并使用SpriteBatch绘制它们),这会导致完全紫色的屏幕.我该怎么做才能解决这个问题?