最简单效果最好的unity3D分辨率适应教程

来源:互联网 发布:1000以内的完数c语言 编辑:程序博客网 时间:2024/05/16 12:39
版本已经更新:请查看最底部附件 
注意:会持续更新 

你还在用NGUI的分辨率适应方式吗?你还在用2DTooKit分辨率适应方式吗?如果你还用那么说明你已经OUT啦! 
下面我来讲讲这几天编写的一套分辨率适应方式,适用于任何分辨率,并且简单易上手,还支持横屏和竖屏,只需要你填写最合适你UI的分辨率,当你切换到其他分辨率的时候UI自动适应(包括位置和大小),而且不会有任何UI拉伸现象。 
  
第一步:首先你要把MyAnchorCamera这个脚本拖到你摄像机上,然后你会看到你的摄像机上附加了这个脚本,并且这个脚本下面有一些参数 
 
  
  
下面我来教大家怎么设置这些参数: 
Mode:最开始你要选择你要适应的是横屏还是竖屏(这个很重要),不同模式他的适应方式不一样,默认的是竖屏模式(Tall)。 
Scale:这个参数不需要你设置,这个参数会根据你当前的分辨率设置好的。 
suirableUI_width:这个参数很重要,你需要自己填写最适合你UI大小、位置的分辨率的宽,也就是你在哪个分辨率下编辑游戏的UI的大小位置最合适就填写哪一个分辨率。默认参数是0,当然你不填的话,你切换分辨率的时候你的UI大小不会改变的哈。 
suirableUI_height:同上
 
所以你最开始要做的事情就是要把Mode和suirableUI_width、suirableUI_height三个参数填好(记得一定要先填哈)! 
  
  
现在开始实战演练,我是在854 * 480分辨率横屏模式下进行编辑的(大家请注意分辨率和UI位置哈): 
 
  
  
第二步:点击刚才附加到摄像机上那个脚本中的Create Anchor按钮 
 
  
  
然后你会发现在摄像机下面会创建一个空对象Anchor,在这个对象上面会有一个脚本,这个脚本的作用其实就是对UI进行固定,也就是相当于对UI进行描点。 
 
  
现在来说说这个空对象上面的MyUIAnchor这个脚本中的参数: 
Anchor:这个参数是可选参数,里面有13中方法,分别多顶端的左、中、右,对中间的左、中、右,对底端的左、中、右,对四个角进行描点(也就是固定UI的位置) 
offset:是UI的偏移变量,对UI位置进行微调参数
 
  
  
第三步:我们对UI进行描点(位置固定),我们创建5个Anchor空对象 
 
  
  
然后改变每一个Anchor的模式,然后改一个我们能辨认的名字(记得一定要先选择模式哦,不然UI位置不好控制哈) 
 
  
这些完成以后就把你要固定的UI拖到上面选好模式的空对象下面 
 
  
  
  
  
下面我们来看看分辨率适应的效果如何(注意UI的位置和大小哦,我是在854 * 480分辨率下进行适应的哦): 
480 * 320: 
 
  
  
800 * 480: 
 
  
  
1024 * 600: 
 
  
  
  
960 * 680: 
 
  
  
  
1280 * 800: 
 
  
  
  
  
1024 * 768: 
 
  
  
  
  
最后来一个不规则的分辨率910 * 613: 
 
  
  
  
  
  
木有了,完成了,有木有很简单,有木有! 
当然作为福利,附件里面还有一个背景填充脚本!把BKAnchor这个脚本放到你要填充整个摄像机的背景图片上它会自动的帮你把摄像机填充满,注意背景会有一定程度的拉伸变形哈! 
(先前那个附件BKAnchor脚本整掉了一行代码,现在补上,大家看看还有没有错,这个脚本要在有MyAnchorCamera这个脚本的前提下才能生效哈) 

有问题或者改进建议、经验交流请加unity3D技术交流群:3112035 
                                                                                                                                    
                           ————  麦兜 

版本1.0.0MyCameraAnchor.zip 

版本1.0.1MyCameraAnchor1.0.1.unitypackage(1.增加了一个自动适应模式,能够按照变化最大的分辨率进行适应;2.去除了几个重复的描边方法;3.增加场景中若有多个Camera情况下可以分别适应不同Camera的功能 4.增加了显示当前分辨的开关,便于调试 5.修改了若干bug) 


版本2.0MyCameraAnchor2.0.unitypackage(增加NGUI的层级分辨率适应:如果用的是NGUI的层级关系,那么只需要启用isNGUIHierarchy变量即可,其他的适应请看上面的教程 
 

版本2.1.0MyCameraAnchor2.1.0.unitypackage(1、修复了摄像机剪裁不准确的bug 2、完善了适应不同摄像机的机制 3、去除了旧的背景适应机制,增加了新的背景适应机制,背景适应更加准确,只需要把“MyBKAnchor”脚本拖到背景图片的对象上然后选择适应的类型即可)
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 驾照过日期换证怎么办 机动车被扣24分怎么办 车辆被扣24分怎么办 现在深圳牌十年老车怎么办? 护士证过期4年了怎么办 护士资格证延续注册过期了怎么办 护士资格证过期没注册怎么办 护士资格证注册时间过期怎么办 辅警体检视力不行怎么办 护士延续注册体检怀孕怎么办 护士资格证没有延续注册怎么办 申请信用卡没有座机号码怎么办 网上申请信用卡没有座机号码怎么办 我叫上门服务被骗了怎么办 上门服务被骗了3000多怎么办 微信被骗9000元怎么办 奥迪a8气囊灯亮怎么办 驾考站岗迟到了怎么办 老板欠员工工资不给怎么办 如果有一天我没头发了怎么办 苏州公积金密码忘了怎么办 科二考试第二把怎么办 科一老是记不住怎么办 科目二考试没去怎么办 网约车驾龄不到怎么办 科四预约不上怎么办 教练不退钱怎么办找谁 驾考出入证丢了怎么办 科二成绩单丢了怎么办 考驾照的准考证丢了怎么办 驾考预约去不了怎么办 科目一预约没去怎么办 打狂犬疫苗期间感冒了怎么办 公司社保欠费不交怎么办 25号社保不交怎么办欠费 会计从业停考了怎么办 黑龙江龙育黄了档案怎么办 科目四档案丢了怎么办 从上海调档案到杭州怎么办 户口迁移身份证变更护照怎么办 有中国签证的孩子怎么办户口