assert文件夹 设置android_Unity游戏开发笔记-贴图设置

c42469e70c3a670cf24c69903493e251.png

本文的内容偏项目设置,是对项目贴图在内存中的一个优化,没有标准答案,只是最近在公司看项目优化内容的一个总结。


命名规范

这里贴图指的是非模型贴图,主要指UI中使用的图集贴图,全屏背景等资源贴图~

  • 项目中非图集Texture的存放目录 AssetsArtResResourcesUITexture
  • 按照功能建立子文件夹,把对应功能的Texture放在相应的目录下面。命名规范遵循驼峰式,例子Activity_Sign,Delegate_Archor。
  • 一些比较散的Texture存放在Others文件夹下,不要存在根目录下

UI贴图格式规范

为了更好的权衡显示和性能,我们都会对项目中的对贴图做了一些基础设置来进行优化。先来一张图对一些压缩格式做了对比:

5712939f404c0cc6db61fa5f7c0b4bee.png
图片来自网络侵删

Atlas相关设置

图集贴图均由美术使用外部工具TexturePacker打包,美术会上传图集的源文件到AssetsArtRes_UIAtlasSource目录下,格式为RGBA32,使用图片分离工具将原图RGB和A通道的信息分别存储到两张贴图里。

RBG贴图 -> AssetsArtResResourcesUIAtlas

Alpha贴图 -> AssetsArtResResourcesUIAtlasAlpha

为什么使用RGBA分离

  1. 基于Android平台,为了追求性能和兼容性,ETC1一直是一种高性价比的压缩格式,但是它有一个最尴尬的点,就是不支持Alpha通道,所以就需要把RGB和A做分离,这样RGB那张图就可以使用ETC做压缩(兼容OpenGL 2.0 +),然后加上一张存储Alpha信息贴图。
  2. 在分离之后,给分离贴图设置压缩格式,内存大小也会压缩,因此在保在保证效果的情况下,对内存也做了优化。

为什么使用1/4大小的RBGA存储

原本存储alpha信息只需要一张原始大小的Alpha8格式即可,但是Alpha8有些机型不适配,可能会FallBack这样反而增大了内存和性能的开销,所以现在用一张1/4大小的RGBA图片去存储A通道信息。

图集贴图在项目中的设置

bc48a6a87867166cea340daf1c847f54.png
图集的RBG图 IOS设置

95261bda8a4d46cd4ada9fefa1155e30.png
图集的RBG图 Android设置

07fb72f91b218067b71e580f1b624c28.png
图集的Alpha图 IOS设置

9d798856a473f068c61844c06f2a3466.png
图集的Alpha图 Android设置

UI中使用的Texture设置

为了做贴图压缩格式的设置,一般我们都会希望Texture的大小为2的幂次方。但是有些可能因为功能原因没有办法设置为2的幂次方,因此会设置成自定义尺寸,这些格式的文件都有相应的设置。

6b4f4a10c66c977d1ff2d290324e632f.png
有Alpha通道 且2的幂次方贴图IOS设置

6b4f4a10c66c977d1ff2d290324e632f.png
有Alpha通道 且2的幂次方贴图Android设置

9556c3827da54c5c30a87b75bd0d2a54.png
无Alpha通道 且2的幂次方贴图IOS设置

3d72a86a4832d26817813e1fec221276.png
无Alpha通道 且2的幂次方贴图Android设置

fe9ff8433130b4cd29acf09a0a0a41ba.png
有Alpha通道 非2的幂次方贴图IOS设置

806f3b20040c15337d6bab4ce2ebfe86.png
有Alpha通道 非2的幂次方贴图Android设置

eeb6b18c45ecfa63d842576b2932b85f.png
无Alpha通道 非2的幂次方贴图IOS设置

3ed842f8818e5aa3dffbe7e2bd33bd84.png
无Alpha通道 非2的幂次方贴图Android设置

工具支持

贴图文件一般都由美术同学上传,但是真正明白这些贴图压缩含义并进行正确设置的美术还是比较难,所以会建立一个配置文件,存储每一个UITexture文件夹下的所有贴图的设置信息。然后在文件Import的时候在PostProcessor里面统一去刷一遍格式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值