我需要将XNA.Texture2D加载到PictureBox。XNA.Texture2D到System.Drawing.Bitmap
我试过这个:http://www.gamedev.net/community/forums/viewreply.asp?ID=3224621但它不起作用。有什么建议么?
我需要将XNA.Texture2D加载到PictureBox。XNA.Texture2D到System.Drawing.Bitmap
我试过这个:http://www.gamedev.net/community/forums/viewreply.asp?ID=3224621但它不起作用。有什么建议么?
您应该可以使用该方法,但请确保您的XNA Texture2D使用32bbpARGB格式创建。任何其他格式都会阻止该方法直接运行。
更简单的方法是将Texture2D使用Texture2D.SaveAsPng
或Texture2D.SaveAsJpeg
保存到内存流中,然后使用Bitmap(Stream)
打开虚拟文件。
[Texture2D = bgr32]。但还有另一个问题,我怎么能'重新格式化纹理到32bbpARGB? – nilphilus 2010-05-04 21:11:45
for(int i = 0; i <4 * texture.Width * texture.Height; i + = 4) { byte tmp = textureData [i + 0]; textureData [i + 0] = textureData [i + 2]; // b textureData [i + 2] = tmp; // r textureData [i + 3] = 255; // A } 它不需要太多时间,但可以改进。 – nilphilus 2010-05-04 21:35:42