008-Unity中Canvas的三种渲染模式以及Canvas Scaler的三种模式

版本:2018\3\14

关于渲染:渲染在电脑绘图中是指用软件从模型生成图像的过程

Screen Space - Overlay

Screen Space-Overlay(屏幕控件-覆盖模式)的画布会填满整个屏幕空间,并将画布下面的所有的UI元素置于屏幕的最上层,或者说画布的画面永远“覆盖”其他普通的3D画面,如果屏幕尺寸被改变,画布将自动改变尺寸来匹配屏幕

该模式下的一些属性:

Pixel Perfect:UI元素精确到像素对齐,边缘更清晰,但是在UI调整和适配时会有更大的计算量

Sort Order:多个Canvas存在时,该值大的会覆盖小的

Screen Space - Camera

Screen Space-Camera(屏幕空间-摄影机模式)和Screen Space-Overlay模式类似,画布也是填满整个屏幕空间,如果屏幕尺寸改变,画布也会自动改变尺寸来匹配屏幕。所不同的是,在该模式下,画布会被放置到摄影机前方。在这种渲染模式下,画布看起来 绘制在一个与摄影机固定距离的平面上。所有的UI元素都由该摄影机渲染,因此摄影机的设置会影响到UI画面。在此模式下,UI元素是由perspective也就是视角设定的,视角广度由Filed of View设置

这种模式可以用来实现在UI上显示3D模型的需求,比如很多MMO游戏中的查看人物装备的界面,可能屏幕的左侧有一个运动的3D人物,左侧是一些UI元素。通过设置Screen Space-Camera模式就可以实现上述的需求

属性:

Render Camera:选择相机

Plane Distance:相机与画布距离

Sorting Layer:在所选相机下,该画布所在的渲染层级,下面的层级覆盖上面的层级

Order in Layer:Sorting Layer相同时该值大的覆盖小的

World Space

World Space即世界控件模式。在此模式下,画布被视为与场景中其他普通游戏对象性质相同的类似于一张面片(Plane)的游戏物体。画布的尺寸可以通过RectTransform设置,所有的UI元素可能位于普通3D物体的前面或者后面显示。当UI为场景的一部分时,可以使用这个模式。

它有一个单独的参数Event Camera,用来指定接受事件的摄像机,可以通过画布上的GraphicRaycaster组件发射射线产生事件。

这种模式可以用来实现跟随人物移动的血条或者名称

属性:

上面都说过了

----------------------------------------------------------------------------------------------------------下面是Canvas Scaler的三种模式

Constant Pixel Size

使UI元素保持相同的像素大小,无论屏幕尺寸如何变化

Scale With Screen Size

使UI元素随着屏幕的变大而变大

Constant Physical Size

使UI元素保持相同的物理大小,而不考虑屏幕分辨率和大小(不常用)

 

参考博客:https://www.cnblogs.com/msxh/p/6337338.html

https://www.jianshu.com/p/660a513e7d41

有关相关应用可以看第一篇

有错误欢迎指出

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值