Unity 图片大小设置

最近换新的UILoading界面,其中关键点涉及2个,
* 加载速度,所以是没有采用Bundle加载的方式,而是放在放在Resouce文件下,用LoadPrefab = Resources.Load(“UI Root (Loading)”);在体验上加载最快
* Texture大小的问题,因为当前屏幕大小是以1136*640为基准。美术给出的图也是1136*60;而图片的大小都是2的N方,导入会压缩图片

1.支持的图片格式

  • jpg : 有损压缩 文件小 不支持透明
  • png: 无损压缩 文件小 支持透明
  • tag:无所压缩 文件大 支持透明
  • dds : 无损压缩 文件最小 支持透明 不支持iOS

2.导入Unity的图片大小会有变化

  • 在做ECT1和PRVC 处理的时候,一张1136*640,会被处理成1024*512。在UI上会有失真.

    • 在Texture Type选择为Advanced,Non Power of 2,选None;这一步操作不做2的N次的压缩。
    • 或者Texture Type选择为Editor GUI and Legacy GUI,也可以得到导入原图的大小;

3.为什么图片要有2的N次的设置

  • 图片的纹理像素在Unity3D中需要遵循2的N次方,由图形学决定的,只识别2的N次方。非2的N次方的图片会转化为2的N次方图片(500 * 500 —》512 * 512),是因为转化过程比较慢,由运行程序转换十分耗时,所以Unity3D提前将资源转化为符合标准的图片。
  • ios pvrtc的原因,有些GUP不支持NPOT,遇到NPOT会有一个转换POT的过程,浪费性能,因此建议都是用POT
  • Non Power of Two Textures 无二次幂限制的纹理
  • unity3d中纹理的压缩可能存在的问题
  • 使用非2次方幂的图像纹理的问题

你可能感兴趣的:(unity)