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.任务中 ...
随机推荐
- [THUPC2021 初赛] 切切糕
个人思路: 从小往大切,感性理解一下. 由于每个人都足够聪明,博弈 dp 只有后效型而没有前效性,所以从固定的最终状态倒序往前 dp,得到初始状态的答案. 状态:\(dp_{i,j}\) 表示还剩 \ ...
- lg8945题解
考虑一个20分的\(O(n^2)\)做法:枚举答案区间\([l,r]\),那么显然要把尽可能多的1填入\([l,r]\).使用前缀和计算\([l,r]\)中\(0\)的个数,那么填入后的价值可以\(O ...
- css初始化、background属性、jquery选择器模糊匹配、canvas
1.css初始化 2.background 3.jquery选择器模糊匹配 4.canvas画多边形 5.通过css设置canvas背景图片 6.js动态生成变量名
- laravel 软删除的使用
1.模型层 引用类use Illuminate\Database\Eloquent\SoftDeletes;class类中引用软删除use SoftDeletes;然后执行正常的删除,列表已经不显示, ...
- miscmisc --攻防世界
题目: (1)解压后将图片放入16进制编辑器,搜索字符串flag发现 图片应该还包含其他文件 (2)使用foremost进行分离,得到压缩包,打开压缩包又有一张图片 (3) 图片同样使用编辑器查看,也 ...
- mysql 1130报错只允许localhost登录解决方法
提示:这些方法会改变登录权限,如果是生产服务器端谨慎操作!!! mysql出现错误码1130的解决办法: 错误描述: 错误代码:1130Host ***.***.***.*** is not allo ...
- 基于Linux的ssh协议配置sftp
sftp采用的是ssh加密隧道,安装性方面较ftp强,而且依赖的是系统自带的ssh服务,不像ftp还需要额外的进行安装 1. 创建sftp组 创建完成之后使用cat /etc/group命令组的信息 ...
- ASCII,unicode与utf-8的区别
ASCII,unicode与utf-8的区别: ASCII码只有127个字母被编到计算机中,无法处理中文,ASCII 编码是 1 个字节 unicode是为了解决因各国标准不同而产生乱码的问题.uni ...
- 树莓派启动后自动发送本地IP 到指定邮箱
在 /etc/init.d 目录下建立 GetLocalip.py 文件 #coding: utf-8 import smtplib from email.mime.text import MIM ...
- Vue中的样式穿透,修改element-ui组件样式不生效
在Vue项目中用的比较多的就是组件,为了实现组件的样式模块化.我们通常会在style标签中添加一个scoped属性,这样css样式只能作用于当前的Vue组件.使组件之间的样式相互独立,当调用该组件的时 ...