Unity3D手机平台分辨率自动匹配教程
1. 下载NGUI
2. 导入NGUI package到Unity。
这时候菜单上会出现NGUI的菜单栏:
3. 将默认的Main Camera删掉,通过菜单栏NGUI->Create新建一个2D UI对象。
此时创建了一个UI Root以及子对象Camera(这就是为什么要删除默认的摄像头),这个摄像头自带了NGUI的UICamera脚本,这个脚本的作用是来响应各种事件的。
4. 设置UI Root属性,点击UI Root,此时在右侧的Inspector面板可以看到其相关属性,这里很关键!选择Scaling Style为ConstrainedOnMobiles,这个是专门为手机分辨率设计的选项,此时下面有两个属性,勾选Content Width和Content Height,并设置你最期望的屏幕分辨率,一般会是你背景图片的分辨率,这样UI Root下的子元素就会根据手机的分辨率等比例缩放!注意下图的官方说明。
5. 你会发现这个新的Camera看不到你创建的物体,需要设置摄像头为可视摄像头。点击Camera,在右侧的Inspector面板会看到Camera的属性,设置以下两个属性:
Culling Mask:选Everything(这个非常重要,这样才能看到你的物体)。
Clear Flags: 选Skybox。
6. 通过NGUI创建一个Texture对象当作背景图片,这一步非常重要!之前博主在这边卡了好长时间。只有在UI Root下并且是NGUI的对象才能应用到UI Root的Scaling Style功能!(当然,应该还有博主没摸清的地方。)
7. 好了,检查下Game视图,看看是不是生效了呢:)下面放几张有代表性的图。
注意:以后添加的所有对象都应该在UI Root下,这样才能跟着背景图片等比例缩放!
分辨率:1280*800(16:10),上下填充黑边。
分辨率:1920*1080(16:9),完美填充,无黑边!
分辨率:800*400(2:1),左右填充黑边。