Unity:如何在运行时在移动设备上从persistentDataPath将hdr文件加载到texture2D

时间:2019-07-07 17:14:27

标签: c# unity3d

我想开发一个移动应用程序,以浏览保存在persistentDataPath上的HDR图像文件。因此,我想读取HDR图像文件以加载到texture2D,但失败了。请帮我解决这个问题。 “ .hdr”或“ .exr”(将hdr格式作为源)对我来说是可以的。

我尝试使用LoadRawTextureData,但团结表示 “ UnityException:LoadRawTextureData:提供的数据不足(将导致过度读取)。”

string path = Path.Combine(Application.persistentDataPath,"test.exr");
if (File.Exists(path)){        
    byte[] hdr_byte = File.ReadAllBytes(path);
    hdr_tex = new Texture2D(2048, 2048, TextureFormat.RGBAFloat, false);
    hdr_tex.LoadRawTextureData(hdr_byte);
    hdr_tex.Apply();
    myrenderer.material.mainTexture = hdr_tex;
}

0 个答案:

没有答案