如何创建图像并将其保存以便以后在XNA中作为纹理绘制?

时间:2012-08-13 22:55:28

标签: c# image xna geometry

在我的游戏中,我需要绘制一个由正方形大小制成的圆圈(圆圈由正方形组成)。我可以在每帧中以锯齿状圆形的形式绘制单色方形纹理,但它消耗了大量资源。我想做的是在内存中的某个地方画一次,然后保存以画出每一帧。

我可以简单地自己绘制所说的圆圈并将其用作准备好的纹理,但我的圆圈并不总是一样的。它在整个游戏中有不同的大小(并且它不是一半的时间圈,但是我已经知道要在哪里绘制的算法),所以它必须以编程方式绘制。

1 个答案:

答案 0 :(得分:3)

首先,将圆圈渲染为自定义RenderTarget2D。您可以像这样设置自定义渲染目标:

GraphicsDevice.SetRenderTarget(renderTarget);

将圆圈渲染到渲染目标后,将其转换为Texture2D,如下所示:

texture = (Texture2D)renderTarget;

了解详情:http://www.riemers.net/eng/Tutorials/XNA/Csharp/Series3/Render_to_texture.php