Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Unity从TGA创建纹理_C#_Arrays_Unity3d_Textures_Texture2d - Fatal编程技术网

C# Unity从TGA创建纹理

C# Unity从TGA创建纹理,c#,arrays,unity3d,textures,texture2d,C#,Arrays,Unity3d,Textures,Texture2d,我试图从StreamingAsets文件夹生成精灵,但在使用PNG和JPG以外的格式创建纹理时,我遇到了麻烦。以下代码: byte[] bytes = File.ReadAllBytes (filepath); // 256x256 .tga image file Texture2D texture = new Texture2D (1, 1); texture.LoadImage (bytes); 生成8x8纹理,该纹理为: 错误考虑到我的图像是256x256

我试图从StreamingAsets文件夹生成精灵,但在使用PNG和JPG以外的格式创建纹理时,我遇到了麻烦。以下代码:

    byte[] bytes = File.ReadAllBytes (filepath);    // 256x256 .tga image file
    Texture2D texture = new Texture2D (1, 1);
    texture.LoadImage (bytes);
生成8x8纹理,该纹理为:

  • 错误考虑到我的图像是256x256
  • 由于Texture2D.LoadImage旨在与PNG和JPG一起使用,因此这是预期的

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

TGA格式不受支持。要做到这一点,您必须编写自己的包装器,但其中许多包装器已经存在。见全班同学。它使用起来非常简单

Texture2D texture = TGALoader.LoadTGA(sfilepath);

TGA图像现在已加载到
纹理
变量中。

TGA格式不受支持。要做到这一点,您必须编写自己的包装器,但其中许多包装器已经存在。见全班同学。它使用起来非常简单

Texture2D texture = TGALoader.LoadTGA(sfilepath);

您的TGA图像现在加载到
纹理
变量中。

LoadImage仅加载jpg或png,这不是因为您的实验得到了错误大小的图像。您是否尝试加载RawTextureData设置图像大小?加载图像仅加载jpg或png,是不是您得到了一个错误大小的图像如何进行实验。你尝试过加载纹理数据设置图像大小吗?哇!成功了!TGALoader是一个很好的基础,尽管我必须更新脚本才能读取RLE压缩图像。哇!成功了!TGALoader是一个很好的基础,尽管我必须更新脚本才能读取RLE压缩的图像。