Unity RenderTexture出现黑色或者显示异常

       在DX11环境下的出PC包,发现RenderTexture显示到屏幕的角色模型是黑色,在OpenGL环境是正常,查看RenderTexture里的纹理资源也是正常。RenderTexture的ColorFormat使用的是默认的R8G8A8_SRGB,这个在OpenGL上是没有问题,对于DX则会有问题,修改成B5G6R5_UNORM_PACK16(显色可能会丢失,在某些显卡上显示异常,如GTX750)或者B10G11R11_UFLOAT_PACK32显示正常。

      真机测试应该会报:

      RenderTexture.Create failed: format unsupported

      建议在使用RenderTexture 一定使用下面的方法检测下:

SystemInfo.IsFormatSupported(Experimental.Rendering.GraphicsFormat, Experimental.Rendering.FormatUsage)

猜你喜欢

转载自blog.csdn.net/lips264/article/details/126030149