CanvasScaler的三种适配模式——缩放模式(Scale with Screen Size)
一、含义
根据屏幕尺寸进行缩放,随着屏幕尺寸进行放大缩小
二、参数介绍
第一个参数一般是美术人员根据游戏主要面向的手机市场,比如安卓市场,用市场上最常用的分辨率作为制作UI图片的标准。这里填的数就是美术人员确认的尺寸,之后的屏幕自适应就通过这个参数进行计算。
Windows系统一般是1920*1080
注意:一般是通过宽高比来进行计算的。Game视图中的比值就是宽高比。使用宽高比就可以模拟不同设备的显示情况。
第二个参数是屏幕匹配模式,主要有三种:
*********************************************************************
第一种:Expand:
解释:将Canvas Size进行扩大,就是指将canvas的Transform的宽和高进行扩大
缩放系数是指Scale的值。
屏幕宽和屏幕高是指屏幕分辨率的宽高(屏幕分辨率是Game面板上的宽和高)
举例:
经过对比可以发现:通过Expand的方式,最终的画布尺寸是1920*1440,与参考分辨率1920*1080相比,确实实现了宽或高的拓展。
最终效果显示:
这种模式会让所有的UI细节都显示在屏幕上,但如果将屏幕拉至过宽或者过高就会分别在两侧或者上下出现黑边。
总结:这个Expand模式,目的就是会把参考分辨率扩大,使得完全展示出所有UI,缺点是:在一些过宽或过高的情况下会无法填充满。
*************************************************************************
第二种:Shrink收缩匹配
和扩展模式相反,会出现裁剪。
举例:
可以发现出现了裁剪。
总结:Shrink就尽可能的让整个图片铺满,但可能出现裁剪
**********************************************************
第三种:宽高匹配(Match Width or Height)
计算公式:
举例:
对于只有横竖屏的游戏,选择这种模式就有优势,可以调整参数。
对于竖屏游戏,只要保持宽度不变即Match=0,那么无论如何改变高度,都不会改变Scale,这样就不会改变UI的大小(Transform的Scale不变那么UI大小就不变),只是在极端情况下,比如屏幕过短或者屏幕过高的情况下会出现被裁剪或出现黑边的情况。
对于横屏游戏,只要保持高度不变即Match=1,那么无论如何改变宽度,都不会改变Scale,这样就不会改变UI的大小(Transform的Scale不变那么UI大小就不变),只是在极端情况下,比如屏幕过短或者屏幕过长的情况下会出现被裁剪或出现黑边的情况。
***************************************************************************
总结:
CanvasScaler的三种适配模式——缩放模式(Scale with Screen Size)的更多相关文章
- Tomcat Connector的三种不同的运行模式
Tomcat Connector的三种不同的运行模式性能相差很大,有人测试过的结果如下: 这三种模式的不同之处如下: BIO: 一个线程处理一个请求.缺点:并发量高时,线程数较多,浪费资源. Tomc ...
- LVS负载均衡常用的工作模式有NAT、DR、和TUN三种,其中DR模式性能最为优越,使用最为广泛。
一.安装LVS LVS的编译安装参考本站文章:http://www.linuxe.cn/post-192.html,对于LVS这种功能性软件,在生产中用yum安装也是没有问题的. 1 yum inst ...
- Unity3d UGUI 界面适配 实例解析 三种适配方式
之前做游戏都是用公司自己的引擎,对于界面的适配分Android和IOS两种系统处理. 对于IOS设备,由于数量有限,只要做到 960x640 1024x769 1136x640 (当时还没有ipho ...
- C2C,B2C,F2C三种电商运营模式的比较
第三方模式(C2C) 销售商模式(B2C) 生产商模式(F2C) 概念及简介 第三方平台提供商模式是电子商务的最原始也是最自然的形式.这种模式一般都是由信息技术开发商负责建立平台,利用平台扩展电子 ...
- Tomcat Connector三种运行模式(BIO, NIO, APR)的比较和优化
Tomcat Connector的三种不同的运行模式性能相差很大,有人测试过的结果如下: 这三种模式的不同之处如下: BIO: 一个线程处理一个请求.缺点:并发量高时,线程数较多,浪费资源. Tomc ...
- Oracle Dataguard三种保护模式概述(转)
Oracle的DataGuard技术有三种实现模式,分别是max performance.max availability.max protection这三种模式. 以下是来自Oracle文档的摘要信 ...
- LVS负载均衡的三种模式和八种算法总结
三种LVS负载均衡模式 调度器的实现技术中,IP负载均衡技术是效率最高的,IP虚拟服务器软件(IPVS)是在linux内核中实现的。 LVS负载均衡模式---1.NAT模式 NAT用法本来是因为网络I ...
- asp.net 的三种开发模式
一, Web Pages 是三种创建 ASP.NET 网站和 Web 应用程序的编程模式中的一种. 其他两种编程模式是 Web Forms 和 MVC(Model View Controller 模型 ...
- 实战VMware的三种网络模式
来源于:http://www.aneasystone.com/archives/2015/04/three-network-modes-of-vmware-in-action.html 一.实验目的 ...
- 在家赚钱,威客网站的使用方法 CSDN项目频道、SXSOFT、任务中国、猪八戒四个网站的线上交易 三种交易模式(1)悬赏模式(2)招标模式(3)直接交易模式
在家赚钱,威客网站的使用方法 很显然,<让猪八戒飞一会儿>作者对威客这一行业不熟悉,<让猪八戒飞一会儿>文章中错误有一些,不一一指出.我在CSDN项目频道.SXSOFT.任务中 ...
随机推荐
- Git 初始命令行
命令行指令 Git 全局设置 git config --global user.name "Administrator" git config --global user.emai ...
- mysql实训
MYSQL You have an error in your SQL syntax; check the manual that corresponds to your MySQL server v ...
- FFmpeg 命令行
FFmpeg命令行帮助 #>ffmpeg -h #>ffmpeg -h long #>ffmpeg -h full 将视频按照指定的宽高输出 #>ffmpeg -i input ...
- noi 1.5 24 正常血压
描述 监护室每小时测量一次病人的血压,若收缩压在90 - 140之间并且舒张压在60 - 90之间(包含端点值)则称之为正常,现给出某病人若干次测量的血压值,计算病人保持正常血压的最长小时数. 输入 ...
- 使用SonarQube对Unity项目进行代码分析的问题记录
1.这里不仔细描述每个步骤,只记录一些关键问题,到官网下载解压最新版的SonarQube(我用的是8.9.1). 2.下载安装jdk,这里要注意官网的说明,我一开始下的jdk16,启动Sonar后报错 ...
- 【JavaScript】JS写法随笔(二) JS动态生成表格
主要思路:通过Ajax请求后端接口并拿到结果list之后,然后通过DOM获取tbody并向tbody中添加行.单元格. $("#calculate").click(function ...
- linux系统分类
1.RedHat系列:Redhat.Centos.Fedora等 2.Debian系列:Debian.Ubuntu等 RedHat 系列 1 常见的安装包格式 rpm包,安装rpm包的命令是" ...
- 西瓜书6.2 matlab的libsvm使用
因为python的教程没有找到详细的所以就改用matlab了 使用的是matlab r2016a,libsvm3-24,具体的安装配置教程就直接参考谦恭大大的了: https://blog.csdn. ...
- 利用python-pptx包批量修改ppt格式
最近实习需要对若干ppt进行格式上的调整,主要就是将标题的位置.对齐方式.字体等统一,人工修改又麻烦又容易错. 因此结合网上的pptx包资料,使用python脚本完成处理. 主要的坑点在于,shape ...
- 时序图,E-R图,数据流程图
其中OSC是在线客服 数据流程图