Unity从TGA创建纹理
问题描述:
我尝试从StreamingAsets文件夹中生成精灵,但是我在创建非PNG和JPG格式的纹理时遇到困难。下面的代码:Unity从TGA创建纹理
byte[] bytes = File.ReadAllBytes (filepath); // 256x256 .tga image file
Texture2D texture = new Texture2D (1, 1);
texture.LoadImage (bytes);
产生8×8的质地是:
- 错误的认为我的形象是256×256,
- 意料之中的,因为Texture2D.LoadImage是指具有PNG格式和JPG格式工作。
那么如何从其他类型的图像创建纹理?
答
不支持TGA格式。你必须编写你自己的包装器,但这些包装器已经存在了。请参阅TGALoader
课程。使用非常简单。
Texture2D texture = TGALoader.LoadTGA(sfilepath);
您的TGA图像现在加载到texture
变量中。
+1
哇!完成了!尽管我必须更新脚本以便能够读取RLE压缩图像,但是TGALoader是非常好的基础。 –
LoadImage只加载jpg或png,是不是你得到一个错误的大小图像如何你的试验。 你试试LoadRawTextureData设置图像大小? – joreldraw