非常简单。我想使用类似“香蕉”的字符串,在其上拍一个SpriteFont,并将其呈现为Texture2D,而不是直接显示为SpriteBatch允许的屏幕。

我可以那样做吗?另外,是否可以通过某种FBO式功能来完成类似的工作?

最佳答案

您可以使用RenderTarget2D类。 http://msdn.microsoft.com/en-us/library/bb198676.aspx
像这样:

RenderTarget2D target = new RenderTarget2D(GraphicsDevice, width,height);
GraphicsDevice.SetRenderTarget(target);// Now the spriteBatch will render to the RenderTarget2D

spriteBatch.Begin();

spriteBatch.DrawString();//Do your stuff here

spriteBatch.End();

GraphicsDevice.SetRenderTarget(null);//This will set the spriteBatch to render to the screen again.

//If you are going to create the render target inside the Draw method, do this:
target.Dispose();

关于fonts - 在XNA中绘制字符串以进行纹理处理?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8425922/

10-12 12:25