Sprite (2D and UI)
孙广东 2015.7.8
在将图片导入Unity后 做的一些设置常常会得到警告信息。所以要了解一下这些设置。
D:\Program Files\Unity5\Editor\Data\Documentation\en\Manual\class-TextureImporter.html
Sprite (2D and UI)
选择导入到Unity中的Texture纹理。在Inspector面板上显示的要进行设置的 ImportSetting选项。
假设你的纹理将在2D游戏(或者UGUI界面)中使用作为一个Sprite,这必须选择此项。
图片:
属性: 功能:
Sprite mode 选择sprite 图形将怎样从image中提取出来。
Single sprite图像将被用于单独的一个【就是一张image原始图片仅仅相应一个sprite】。之前測试了一下,假设要在Sprite Packer窗体中看到要打到运行包的全部精灵,必须是Single的。
Multiple 多个相关精灵(比如,动画帧的连续图片或一个单一的游戏角色身上的各个组成部分)一起将保持在同样的image中【就是一张image原始图片相应多个sprite精灵】。假设选择此项。我们在得到资源后,须要 在点击”Sprite Editor“选项进行每一个小精灵的提取(提取方式又有两种这里就不说了)
Packing Tag 当前纹理要被打进的图集包的名称【打包图集应该对NGUI非常熟悉吧】。
Pixels To Units 在sprite图像的宽度/高度的像素数量。它将相应于世界空间中的一个距离单位。???
Pivot 图片上的一个点。在sprite的本地坐标系中(center【默认】, top-left等)。
对UGUI非常多时候很多其它是默认的center。还有就是RectTransform组件的弹窗显示,还有的时候比方要设置旋转中心点。比較特殊,我们就要Custom这个操作能够在Scene中直接调整。
Generate Mip Maps 生成Mip Maps【作用:】有个时候选择了会提示”Only POT texture can be compressed if mip-maps are enabled“ 这是由于图片必须要採用2的幂次方大小才干使用该格式。非常多时候也会由于Mip Maps占用多余的内容所以不选择它
Filter Mode 选择当它获取伸展时纹理怎么样被过滤,通过转换:
Point 纹理在近距离变成块状blocky
Bilinear 纹理在近距离变模糊blurry 【默认选项】
Trilinear 像Bilinear,但纹理在不同的mip级别之间也模糊了
Per-Platform Overrides:
Import Details:
Supported Formats:
Texture Sizes:
Mip Maps:
Unity5中怎样降低资源的大小:
D:\Program Files\Unity5\Editor\Data\Documentation\en\Manual\ReducingFilesize.html
如今更关心我 美术的图片资源的设置,由于是2D的休闲游戏。
减小大小的第一步是确定哪些资产消耗最大,由于这些资产都是优化的重点。你能够发现这些信息从Editor Log, 在运行build后 (从Console窗体的小型面板上方菜单中选择Open Editor Log的)。
图片:
该日志提供资产类别分列的摘要,然后列出全部的个人资产消耗大小的顺序。通常情况下,像textures, music and videos的东西将会占领了大多数存储而scripts, levels and shaders往往能够忽略不计。请注意,在摘要中提到的File Headers不在自己的资产。headers实际是额外的数据被加入到“raw”资产文件来存储引用和设置。
log能够帮助您确定您可能希望删除或优化的资产,可是之前您应该考虑下面设置工作:
Unity又一次编码导入的资源为其自身内部的格式,所以源资产类型的选择是不相关。比如,假设您有多层 Photoshop 纹理在项目中在building前它将夷为平地和压缩。【注意】将纹理作为 PNG 导出文件不会作出不论什么差异build size。所以你应该坚持的是在开发过程中对您最方便的格式。
Unity strips带从未使用的资产在build期间,所以你不用通过手动从项目中删除资产获得不论什么东西。唯一不会被删除的资产是脚本 (由于通常非常小) 和资产Resources目录中的 (由于Unity不能确定哪一种被使用哪一种没被使用)。为此,应确保这个game真的须要资源目录中的资产。您可能能够在Resources中资产替换为AssetBundles来动态载入的资产,从而降低player大小。
降低Build Size建议:
Textures纹理
build中纹理常常占用最多空间。首先要做是使用compressed压缩的纹理格式 (DXT(Desktop platforms) 或 PVRTC)。
试着降低的纹理大小。
这里的窍门是。你不须要改动实际的源内容。
仅仅需在Project视图中选择纹理并在Import Settings中设置Max Size。它是一个好的主意来缩放对象使用的纹理。然后调整的Max Size,直到它開始看起来在场景视图中更糟。
图片:
Changing the Maximum Texture Size will not affect your texture asset, just its resolution in the game
更改纹理的Maximum大小不会影响你的纹理资产。仅仅是更改了其在游戏里的分辨率
下表显示图像格式占用多少存储空间。以字节为单位。每一个像素:
表格:
Compression | Memory consumption (bytes/pixel) |
---|---|
Standalone | |
RGB Compressed DXT1 | 0.5 bpp |
RGBA Compressed DXT5 | 1 bpp |
RGB 16bit | 2 bpp |
RGB 24bit | 3 bpp |
Alpha 8bit | 1 bpp |
RGBA 16bit | 2 bpp |
RGBA 32bit | 4 bpp |
iOS | |
RGB Compressed PVRTC 2 bits | 0.25 bpp (bytes/pixel) |
RGBA Compressed PVRTC 2 bits | 0.25 bpp |
RGB Compressed PVRTC 4 bits | 0.5 bpp |
RGBA Compressed PVRTC 4 bits | 0.5 bpp |
RGB 16bit | 2 bpp |
RGB 24bit | 3 bpp |
Alpha 8bit | 1 bpp |
RGBA 16bit | 2 bpp |
RGBA 32bit | 4 bpp |
Android | |
RGB Compressed DXT1 | 0.5 bpp (bytes/pixel) |
RGBA Compressed DXT5 | 1 bpp |
RGB Compressed ETC1 | 0.5 bpp |
RGB Compressed PVRTC 2 bits | 0.25 bpp (bytes/pixel) |
RGBA Compressed PVRTC 2 bits | 0.25 bpp |
RGB Compressed PVRTC 4 bits | 0.5 bpp |
RGBA Compressed PVRTC 4 bits | 0.5 bpp |
RGB 16bit | 2 bpp |
RGB 24bit | 3 bpp |
Alpha 8bit | 1 bpp |
RGBA 16bit | 2 bpp |
RGBA 32bit | 4 bpp |
总图像存储大小的公式是 = width * height * bpp。假设您正在使用 mipmap 存储将超出单个图像大约三分之中的一个。
默认情况下Unity导入时压缩全部纹理。
为了在编辑器中更快的工作流,您能够依据喜好关闭压缩,但在Build时全部纹理都压缩,不管怎样设置。
【重申】Unity总是后处理导入的文件。因此,在编辑器中导入多层的PSD文件将被自己主动转换为JPG,在编辑器文件大小方面没有不论什么的差别,保存文件为源格式(比如.mb文件、 .psd文件、.tiff文件)将使得工作更加简单。