Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# XNA.Texture2D到System.Drawing.Bitmap_C#_.net_Xna_Picturebox_Texture2d - Fatal编程技术网

C# XNA.Texture2D到System.Drawing.Bitmap

C# XNA.Texture2D到System.Drawing.Bitmap,c#,.net,xna,picturebox,texture2d,C#,.net,Xna,Picturebox,Texture2d,我需要将XNA.Texture2D加载到PictureBox 我试过这个:但不起作用。有什么建议吗?您应该能够使用该方法,但请确保您的XNA Texture2D是以32bbpARGB的格式创建的。任何其他格式都会阻止该方法直接工作。您应该能够使用该方法,但请确保您的XNA Texture2D是以32bbpARGB的格式创建的。任何其他格式都会阻止该方法直接工作。更简单的方法是使用Texture2D.SaveAsPng或Texture2D.SaveAsJpeg将Texture2D保存到内存流中,然

我需要将XNA.Texture2D加载到PictureBox


我试过这个:但不起作用。有什么建议吗?

您应该能够使用该方法,但请确保您的XNA Texture2D是以32bbpARGB的格式创建的。任何其他格式都会阻止该方法直接工作。

您应该能够使用该方法,但请确保您的XNA Texture2D是以32bbpARGB的格式创建的。任何其他格式都会阻止该方法直接工作。

更简单的方法是使用
Texture2D.SaveAsPng
Texture2D.SaveAsJpeg
将Texture2D保存到内存流中,然后使用
位图(流)打开虚拟文件

更简单的方法是使用
Texture2D.SaveAsPng
Texture2D.SaveAsJpeg
将Texture2D保存到内存流中,然后使用
位图(流)
打开虚拟文件。但还有另一个问题,我如何将纹理“重新格式化”到32bbpARGB?对于(inti=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}它不需要太多时间,但可以改进。[Texture2D=bgr32]。但是还有一个问题,我如何将纹理“重新格式化”为32bbpARGB?对于(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}它不需要太多时间,但可以改进。