参考文档

https://docs.unity3d.com/Manual/class-TextureImporter.html

unity 导入PNG格式 unity怎么导入图片_图片格式

Texture Type(纹理类型) 有用于2D的,法线贴图的,鼠标贴图的等

Texture Shape(纹理形状) 默认情况下设置为2D

 

Alpha Source 是否导入Alpha通道

Read/Write Enable(是否启用读写) 开启读写可以访问Texture2D.SetPixels, Texture2D.GetPixels和其他Texture2D方法。开启会使Texture所需内存量增加一倍。因此默认情况下禁用此属性,并且仅在需要脚本访问权限时才启用它。

Generate Mip Maps(是否生成小图) Mipmap是Texture的较小版本,当Texture在屏幕上很小时会使用,用于优化实时3D引擎的性能。距离相机较远的对象使用较小的Texture版本。使用Mip Maps会占用33%的内存,但是不使用它们会导致巨大的性能损失。 Mip Maps对于避免多种形式的Texture混叠和闪烁也是必不可少的。如果是UI都在一个平面,不因摄像机距离变化可以不勾选。

Wrap Mode(平铺类型) Repeat 重复,Clamp 拉伸边缘,Mirror 镜像,Per-axis 可以分别设置U轴和V轴的平铺类型。

Filter Mode(过滤模式) Point 点模式:被拉伸时纹理成块状,Bilinear 双线性 :被拉伸时成模糊状,Thilinear: 三线性:与双线性类似,但纹理还会在不同的MIP级别之间进行模糊。性能也会相应变差。

unity 导入PNG格式 unity怎么导入图片_贴图_02

Aniso Level(各向异性等级) 各向异性过滤使贴图在一个浅的角度查看时,看起来效果更好,但是会增加图形硬件的性能开销,通常您使用它对地板、地面或道路的贴图使其看起来更好。此变量的值的范围从1-9,其中1等于没有过滤而9等于完全过滤。值越大,贴图在浅角度看时显得更清晰。较低的值表示贴图在浅角度显得更模糊。

 

图片各个平台的尺寸和格式的设置:

Default是默认设置,不同平台可以override进行重写更改。

MaxSize 该纹理的最大尺寸,如原图尺寸为1024*568,该项设置成4096,unity也只会使用它的原尺寸大小,该值的大小大于等于图片原尺寸,如果小于纹理质量会有损失。

Resize Algorithm(调整大小算法) 当纹理尺寸大于指定的MaxSize时,用于缩小纹理的算法。Mitchell是默认的调整大小算法,Bilinear 对于小而锐利的细节很重要的图像,可能会保留比Mitchell更多细节。

Compression(压缩格式) None是不压缩,压缩质量越高,内存使用率也会越高。

对于5.3.8版本

  1. Compressed 压缩,如果纹理没有透明通道,一般使用该项,如果有透明通道,显示原图片有可能出现问题。每个像素占4bits
  2. 16 bits 低质量的真彩格式,每个像素占16bits
  3. TrueColor 真彩格式。质量最高,是Compressed的8倍,每个像素占32bits
  4. Crunched 这种类型将会根据显卡的GPU来选择合适的压缩格式进行压缩然后会选用一种CPU上就能处理的压缩格式再压缩一遍。可帮助纹理使用磁盘上最小的空间以及进行下载。如果在制作供人下载的资源包的时候这种类型非常的合适。这个类型的压缩需要很长时间,但在运行时解压是非常快的。

图片的大小一定要是2的幂次方,这样unity才能压缩成比较小的图片格式,如:etc、pvrtc等。如果原图不是2的幂次方,可以在advance设置Non Power of 2的值

ToNearest :转换成距离该图片最近的2的幂次方值。

ToLarger : 转换成比该图片大的2的幂次方值。

ToSmaller : 转换成比该图片小的2的幂次方值。

 

UnityEditor使用代码设置图片属性的方式:

string path = AssetDatabase.GetAssetPath(texture);  
TextureImporter texImporter = AssetImporter.GetAtPath(path) as TextureImporter;  
texImporter.textureType = TextureImporterType.Sprite;  
AssetDatabase.ImportAsset(path);