Unity引擎GUI之Canvas和EventSystem
Posted 虚拟ζ已来
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity引擎GUI之Canvas和EventSystem相关的知识,希望对你有一定的参考价值。
最近想写一套关于UGUI所有控件的基础使用教程系列,主要是根据本人的使用心得以及部分测试附带字面翻译来写的,所以其中可能难以避免会有不正确的地方。
好了进入主题,既然是第一篇,我觉得我有必要先介绍一下UGUI必不可缺的两个组件:Canvas和EventSystem
事实上在场景中第一次创建UGUI控件的时候,这两个物体都会自动添加到场景中,当然,必不可缺的不是这两个物体,而是他们身上挂载的组件。
一、Canvas作为所有UGUI控件的父级,他管理着下属所有控件的布局。
Canvas组件:
Render Mode(渲染模式):这里一般选择Screen Space - Camera,类似于NGUI的方式用特定的UI摄像机渲染UI,这种渲染模式个人觉得是最佳的,他完全将场景物体和UI进行了分类管理,使得后期开发更加的醒目和易于管理。
Render Camera(渲染相机):设置好独立相机渲染模式,这里为其指定一个渲染UI的相机,该相机的属性要做一些必要的调动。
Clear Flags设置为Depth only(只渲染深度),Culling Mask只保留UI层,Projection设置为Orthographic(正交模式),Depth深度的值必须大于场景主摄像机的值,这样UI才会一直保持在场景物体之上。
Canvas Scaler组件:
Ui Scale Mode(UI缩放模式):也就是UI在自适应时的缩放方式,这里选择第二种方式跟随屏幕缩放。
Reference Resolution(参照分辨率):一般设置为1920*1080,当下主流的最佳分辨率,UI整体将根据16:9的方式适应缩放。
Graphic Raycaster组件:
该组件作为UGUI开启射线投射必不可缺的组件,其属性我们就不用去动了,保持初始值即可。
二、EventSystem作为的是整个UGUI的事件系统(当然他也可以分配非UI物体的事件)。
Event System组件:事件获取与分发必不可缺的组件
Standalone Input Module组件:标准输入模块
Touch Input Module组件:触摸输入模块
这三个组件都是必不可缺的,没有必要的话,我们不必去改动其属性,保持初始值即可。
完成了这两步,接下来就可以进行UGUI界面的开发了。
以上是关于Unity引擎GUI之Canvas和EventSystem的主要内容,如果未能解决你的问题,请参考以下文章