Unity Texture2D读取像素时出错问题

Texture2D在读取像素处理时,经常会出错,这个时候可以用如下函数先转换:

cs 复制代码
	public Texture2D DeCompress(Texture2D source)
    {
        RenderTexture renderTex = RenderTexture.GetTemporary(
                    source.width,
                    source.height,
                    0,
                    RenderTextureFormat.Default,
                    RenderTextureReadWrite.Linear);

        Graphics.Blit(source, renderTex);
        RenderTexture previous = RenderTexture.active;
        RenderTexture.active = renderTex;
        Texture2D readableText = new Texture2D(source.width, source.height);
        readableText.ReadPixels(new Rect(0, 0, renderTex.width, renderTex.height), 0, 0);
        readableText.Apply();
        RenderTexture.active = previous;
        RenderTexture.ReleaseTemporary(renderTex);
        return readableText;
    }
相关推荐
Miss_SQ6 小时前
Webgl打包后删除StreamingAssets文件夹下多余资源
unity·c#·webgl
Monkey_Xuan10 小时前
C#中的引用传递和值传递
unity·c#
CreasyChan10 小时前
C# LINQ 深度解析:优缺点与性能陷阱
unity·c#·游戏开发
freshman11817 小时前
Unity动画控制
unity
IMPYLH18 小时前
Lua 的 xpcall 函数
开发语言·笔记·后端·游戏引擎·lua
AI视觉网奇1 天前
虚幻引擎 metahuman
游戏引擎·虚幻
技术探讨者2 天前
Unity 框架:从核心构成到实践应用的全面解析
unity·游戏引擎
牛掰是怎么形成的2 天前
Unity Legacy动画与骨骼动画的本质区别
unity·游戏引擎
weixin_458360912 天前
Unity使用Cursor Editor
unity