1.制作UI最好不要用原生UI系统,运行效率极低。
相比插件UI ,NGUI是目前比较好的。
2.UI图片资源管理及优化
a)图片格式一般采用PNG,在移动开发,不透明的图片保存为不带透明通道的图片格式,jpg;方便自动压缩为etc格式
b)所有图片命名要规范,存放位置要合理。方便查找与优化。
c)保存图片的源文件,方便重复修改与利用。
d)小的图片资源尽量打在ATLAS图集里面,U3D对用同一MATERIAL进行批处理,提高渲染效率。当然要自己分好模块。发布前查看ATALS图集是否充分利用好空间,若黑空出来一大片,需要好好考虑下分配了。一张图集若因为几个小东西而翻了一倍的话,那就是多了一倍的空间。例如一张1024*512的图集就有2M,当图集因为一个小图而达到1024*1024大小的时候,这张图就是4M了。整个游戏就增加了2M……听闻图集极限是2048 *2048,超过了会有问题(各种看不到),在配置较低的安卓机子下,图集超过1024 * 1024就是各种黑片片了,所以建议图集大小控制在刚好1024 * 1024。
e)大的图片最好不要放在打包的ATALS图集里面了。大的图片往往都是UI的背景图片。单独作为一个simpletexture的widget来处理比较好。
f)有时你会发现调整深度无效,图片的层次乱了。这要看下你是怎么定义图集的了,深度只在同一图集内有效。若在两个不同图集的,则需要调整Z轴来修改层次。当然也会出现一种尴尬现象,例如你需要定义图集A的一个sprite在图集B的两个sprite之间的情况。此刻调整Z轴也没有办法了,你需要分开图集B的那两个SPRITE。
g)对于大项目,开发周期较长,图片资源较多,可以把不同的资源删除,或者统一放在处理文件夹中,统一处理。
3.当UI非常多的时候,可以使UI模块化,用什么UI调用什么UI,不用的可以删除。