Unity 从 TGA 创建纹理

Unity create texture from TGA

我尝试从 StreamingAsets 文件夹生成 sprite,但在从 PNG 和 JPG 以外的格式创建纹理时我遇到了困难。以下代码:

    byte[] bytes = File.ReadAllBytes (filepath);    // 256x256 .tga image file
    Texture2D texture = new Texture2D (1, 1);
    texture.LoadImage (bytes);

生成 8x8 纹理,即:

那么如何从其他类型的图像创建纹理?

不支持 TGA 格式。您必须编写自己的包装器才能这样做,但其中许多包装器已经存在。见TGALoaderclass。使用起来非常简单。

Texture2D texture = TGALoader.LoadTGA(sfilepath);

您的 TGA 图像现已加载到 texture 变量中。