资源制作标准设定建议
1.所有的UI资源全部采用PNG导出
因为Unity不支持外部压缩,所以,不论是用PNG还是JPG,只要尺寸相同,资源量在引擎中都会是一样大。所以,可以大胆地采用PNG进行输出,以保留和实现更好的色彩效果。
2.设定好一个客户端的标准分辨率
是1920*1080还是1280*768
3.提前考虑是否需要跨平台
4.和美术人员约定非常大的图片尽可能采用九宫格
5.会用作Sprite的UI元件尽量以最小尺寸切
对于大量的UI小元件,例如图标、按钮等,尽量让美术人员以最小尺寸切。所谓的最小尺寸,就是图片刚好包围下这个UI元件。因为在NGUI中,它会以UI元件在打包前的源文件尺寸作为控件的尺寸,这意味着,如果将一个明明只有100*100像素的按钮图片放置在一张500*500的UI图片中,除了按牛牛图片部分,其他地方都透明掉,这样制作成UI图集之后,NGUI中调用这个Sprite时,它的尺寸会被识别为500*500。
6.对于会用作Texture的UI图片尽量保持长宽都为2的N次方
7.将UI元件尽量分类整理避免重复
程序如何保证UI资源的分辨率不失真
当UI图片导入到引擎中时,可能有时候会遇上美术人员在用PhotoShop设计制作时尺寸刚好,但是放到客户端中就匹配不上的情况。在这种情况下,首先确保一点:Unity中Game视窗的分辨率设置是项目中统一的分辨率,美术人员也是按照这个分辨率作为画布标准来设计的UI。然后进行如下操作。
如果是2D UI,那么只需要单击控件的Snap即可,让图片还原为原尺寸大小,效果几乎可以做到和美术人员用PhotoShop做的一模一样的效果。
如果是3D UI,因为相机不是正交相机,所以,因为距离、透视等关系,控件生成之后单击Snap,控件尺寸还原到原文件的大小,但是即使这样,在游戏视窗中它依然会比源文件看上去更大。这种情况下,会导致无法还原美术人员的设计图,在使用3D UI时需要将3D UI的UI Root下面UI Camera的Field Of View的值设为75,则控件的视觉大小将会和源文件应该有的大小保持一致,可以几乎完全地还原美术人员的设计效果。
针对各大平台设置单独的尺寸和格式
在Unity中,跨平台时可以为每个图片设置不同平台下的资源和格式,比如一张1024*1024的图片,可以让它在iOS平台下位1024*1024,在安卓平台下就变为512*512。
选中一个图片文件后,在Inspector窗口中。
Default为默认的设置,向右以此是Web的设置、PC/Linux端的设置、iOS的设置、安卓的设置、黑莓的设置、Flash的设置等。可以为图片设置其在不同平台下的尺寸和格式。如果没有设置,它将会在任何平台下都应用Default设置。
对于iPhone4手机:图片如果超过了2048尺寸,将无法显示(显示为一片黑色)。