[unity3d]NGUI屏幕自适应

NGUI确实是很是棒的一个作界面的插件,比起U3D自带的GUI要好不少,固然也有一些很差之处,毕竟什么都不可能那么完美。ide


最近在用Unity写游戏使用NGUI遇到了一个不少人都在遇到的问题,就是关于屏幕自适应,谷哥度娘里面写关于适应屏幕的帖子不少,可是大多都是同样抄来抄去,都是说是Panel里面加个UIStretch里面加个 if 分支,什么OnWidth什么的,还要把UIAnchor的side放置在Bottom等等步骤,过于麻烦,并且效果也通常。.net


不知道你们在用最新的Unity的时候在UIStretch里面style参数有没有发现新添加了两个枚举插件


按照它的字面意思就是一个是“按保持的比例填充”和“适合保持内部比例”blog


其实能够想想,安卓手机在屏幕分辨率上面有不少种,其长宽比例是不同的,在制做游戏的时候若是保持位置的不变,不免要形成图片的不均等拉伸,因此用原有的比例会使画面看起来更和谐,多出来的部分也并很少,若是能够这样想,那么就能够进行后面的了。游戏


1.首先在你的panel里面不要填充任何控件,若是有,能够先拖出来,图片

2.选中panel添加UIStretch脚本it

3.将style选择最后一个FitInternalKeepingRatioio

4.在Initial Size中填写你当前使用的屏幕大小。(好比你的游戏视窗是800*480的,就X 800,Y 480)class

5.若是原先有控件了,再拖进来就能够了,若是没有,就能够在里面添加控件了。自适应


在你选择修改游戏屏幕大小后,必定要运行一下才能够看到它调整事后的效果,能够看到比例是彻底适应的,差异仅仅是多出来部分扩大了一些游戏场景而已。

操做起来很容易,也不须要多余的代码。


转载自:http://blog.csdn.net/w337198302/article/details/13092665