Unity3d+NGUI多分辨率适配

本文详细介绍了Unity3d结合NGUI进行多分辨率适配的方法,包括NGUI的显示原理,手动设置manualHeight的影响,以及如何处理按屏幕百分比显示的问题。在手动高度设置中,UIRoot的Scale与manualHeight密切相关,影响UI在不同设备上的显示效果。对于全屏背景图和窗口式UI,需要合理设定尺寸以确保在不同分辨率设备上表现一致。此外,当需要按屏幕宽度百分比调整UI大小和位置时,需要编写相应代码实现。
摘要由CSDN通过智能技术生成

1. NGUI中多分辨率显示原理。

使用NGUI时,我们一般会建立一个专门渲染UI的Camera,把Camera中Projection属性设置为Orthographic,把Size属性设置为1,再通过设置UIRoot的manualHeight变量决定默认高度。manualHeight变量决定着UIRoot的Scale大小。规则是:Scale分量大小 =  Size*2/manualHeight。这是NGUI为了保证单位1 pixel = 1 unit ratio。

2. manualHeight大小的影响

manualHeight变量决定游戏是按照设备的高度适配。我们可以这样理解:把一个设备的屏幕从上到下分为manualHeight个单位来显示图像。左右显示的范围由屏幕的宽高比决定。如果我们把默认高度设置为640。

左右显示的范围计算方法如下表

分辨率 宽高比 manualHeight高度 水平显示范围
960x640 1.5 640 640x1.5=960
1136x640 1.775 640 640x1.775=1136
1024x768 1.333 640 640x1.333=853


如果我们显示一个全屏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值