Unity中UGUI之Canvas属性解读版本一

 

Canvas的基本属性

1.Canvas Scaler组件 :

Canvas Scaler组件用于设置处于不同组件下Canvas画布中的元素的缩放模式。

Ui Scaler Mode : 设置UI的缩放模式:

Constant Pixel Size : 无论处于什么分辨率下Canvas下的UI控件都保持原来的大小。

Scale With Screen Size :在当前模式下,Canvas画布下的UI控件会随着不同的分辨率而进行一定的缩放,以达到合理的大小。 
在这种模式下有一个选项: 

Reference Resolution :设置当前窗口的分辨率,通常设置自己需要运行游戏的分辨率。

Match : 设置缩放的方向比例,当值为零的时候则只在宽度改变是进行缩放,当为1时则只在改变高度的时候进行缩放。

2.Canvas组件的渲染模式:

Render Mode 属性设置的画布的渲染模式 ,其中有三种渲染模式:

Screen Space - Overlay模式:

这种模式下是直接在屏幕上渲染显示画布的内容,即使画布不在摄像机范围类,或者当前没有摄像机是画布上的内容都会绘制出来。在这种模式下内部是集成了一个摄像机的,但我们无法操控这个摄像机。

在这种模式下,在不同的屏幕分辨率下画布会自动适配屏幕的分辨率大小。

例如当禁用摄像机是图像依然显示在屏幕上: 

Screen Space -Camera 模式:

在这种模式下,是将画布放置在距离摄像机一定距离的视野中,画布的内容都是通过摄像机来绘制,此时的画布会跟随着摄像机的移动而移动。当摄像机被禁用时画布也不会显示出来。

这种模式下当摄像机视野大小改变或者屏幕大小改变,画布也会自动去适配。

RenderCamera:设置选用的摄像机

Plane Distance :设置摄像机距离画布的距离

在这种模式下我们可以在画布与摄像机之间添加3D模型,或者3D特效。

World Space 模式 : 
这种模式下画布会被当做世界空间中的一个模型来处理,它不会跟随摄像机的移动,超出摄像机视野则不会再被显示出来,这种模式下可以手动的设置画布的位置,以及画布大小,画布不会再自动适配。

3.Graphic Raycaster组件:

 射线检测组件,其作用是用于获取用户选中的UGUI控件,当禁用这个组件的时候用户在无法获取到控件对控件进行操作,其属性为: 

Ignore Reversed Graphics :是否忽略控件的正面和反面方向,都接受射线的检测,勾选则是。

Blocking Objects:屏蔽指定类型的(物理)对象,使它们不参与射线检测。渲染模式不为ScreenSpaceOverlay时起作用。 
可选值为: 
None:不屏蔽任何物理对象 
Two D:屏蔽2D物理对象(即具有2D碰撞体的对象) 
Three D:屏蔽3D物理对象(即具有3D碰撞体的对象) 
All:屏蔽所有物体对象

Blocking Mask:使屏蔽对象中的指定层不参与射线检测。渲染模式不为ScreenSpaceOverlay时,且Blocking Objects不为None时起作用。

原文地址:https://www.cnblogs.com/Study088/p/7155201.html