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时起作用。

Unity中UGUI之Canvas属性解读版本一的更多相关文章

  1. Unity中UGUI之Canvas属性解读版本二

    Canvas Render Modes(渲染模式) 1.在screen空间中渲染2.在world空间中渲染 Screen Space-Overlay 在这个渲染模式中,UI元素将在场景的上面.如果场景 ...

  2. unity 中UGUI制作滚动条视图效果(按钮)

    1.在unity中创建一个Image作为滚动条视图的背景: 2.在Image下创建一个空物体,在空物体下创建unity自带的Scroll View组件: 3.对滑动条视图的子物体进行调整: 4.添加滚 ...

  3. unity中 UGUI的按下、拖动接口事件的实现

    using UnityEngine; using System.Collections.Generic; using DG.Tweening; using UnityEngine.EventSyste ...

  4. Unity中UGUI鼠标穿透UI问题的解决方法

    不过在使用时需要先获取两个红色显示的变量,graphicRaycaster和eventSystem. 这两个变量分别对应的是Canvas中的GraphicRaycaster组件和创建UI时自动生成的“ ...

  5. Unity中uGUI的控件事件穿透逻辑

    1.正常来说Image和Text是会拦截点击事件的,假设加入EventTrigger的话,就能够响应相应的交互事件. 2.假设Image和Text是一个Button的子控件.那么尽管其会显示在Butt ...

  6. 在Unity中用UGUI制作可输入下拉框

    Unity中UGUI制作可输入下拉框 目录 Unity中UGUI制作可输入下拉框 前言 组件分析 制作流程 总结 前言 在搜索引擎以及一些网页中我们常常可以看见这样一种UI控件,看上去是一个输入框,在 ...

  7. 关于Unity中的UGUI优化,你可能遇到这些问题

    https://blog.uwa4d.com/archives/QA_UGUI-1.html 关于Unity中的UGUI优化,你可能遇到这些问题 作者:admin / 时间:2016年11月08日 / ...

  8. 关于Unity中的NGUI和UGUI

    一.用Unity开发2D游戏,有三套关系 1.GUI:Unity本身自带的GUI 2.NGUI:以前在Unity中广泛来做2D的,是第三方的包,需要安装 3.UGUI:Unity5.X后(其实是Uni ...

  9. 在Unity中使用UGUI修改Mesh绘制几何图形

    在商店看到这样一个例子,表示很有兴趣,他们说是用UGUI做的.我想,像这种可以随便变形的图形,我第一个就想到了网格变形. 做法1: 细心的朋友应该会发现,每个UGUI可见元素,都有一个‘Canvas ...

随机推荐

  1. vue-cli中理不清的assetsSubDirectory 和 assetsPublicPath

    背景 一般情况下,我们借用 vue-cli之力安装好所有依赖后,我们就可以愉快的板砖了.但是也经常会遇到一写问题,比如assetsSubDirectory 和 assetsPublicPath两个兄弟 ...

  2. git报错fatal: loose object ....(stored in .git/objects/....) is emtpy

    主要是非正常关机.把.git给破坏了 参考https://stackoverflow.com/questions/12571557/fixing-a-corrupt-loose-object-as-a ...

  3. 用友软件系统管理员账号admin密码忘记了,如何解决?

    1.打开数据库. 2.点开  数据库-UFSystem. 3.找到dbo.UA_user表,鼠标右键,点打开表. 4.打开后,找到admin,cPassword列即可找到系统管理员密码.

  4. 基因/转录本/任意特征 表达定量工具之featureCounts使用方法 | 参数详解

    featureCounts真的很厉害. 常见的参数(没什么好说的,毕竟是固定的): -a -o input_file1 -F -t -g -Q -T 关键是以下几个参数怎么设置: -f # Perfo ...

  5. 差异基因分析:fold change(差异倍数), P-value(差异的显著性)

    在做基因表达分析时必然会要做差异分析(DE) DE的方法主要有两种: Fold change t-test fold change的意思是样本质检表达量的差异倍数,log2 fold change的意 ...

  6. every day a practice —— morning(6)

    "Nearly one in five job ads for China's 2018 national civil service called for 'men only' or 'm ...

  7. OpenVPN参数详解

    一般选项: –config file : 从file中读取配置选项. –help : 显示选项. –version : 显示版权和版本信息. 隧道选项: –local host : 本地主机名或IP地 ...

  8. @Builder与@NoArgsConstructor | Lombok

    一.@Builder与@NoArgsConstructor一起使用存在的问题   @Data @Builder @NoArgsConstructor public class User { priva ...

  9. Confluence 6 空间

    什么是一个空间? Confluence 空间是包含有页面和博客页面的容器.你也可以将空间认为是对你工作中可以使用的 2 中类型的目录. 在 Confluence 中有下面 2 种空间类型: 站点空间( ...

  10. Robbers' watch CodeForces - 685A (暴力)

    大意: 一天n小时, m分钟, 表以7进制显示, 求表显示数字不同的方案数 注意到小时和分钟部分总长不超过7, 可以直接暴力枚举. 关键要特判0, 0的位数要当做1来处理 #include <i ...