Unity UGUI Canvas简谈

自学备用,如有问题欢迎及时指正,我会尽快改正。
(版本unity 2018.2.9f1)
本篇记录 Unity UGUI canvas 中的各项参数设置和效果,还是那句话自学备用,如有问题欢迎指正,我会尽快改正。


创建的Canvas Inspector面板

新建的Canvas拥有Rect Transform,Canvas,Canvas Scaler 以及 Graphic Raycaster 这几个组件。Rect Transform此时为灰色,在Scene视图中不能对Canvas进行操作。Rect Transform 下一行英文“Some values driven by Canvas” ——Canvas驱动一些值。

  • Canvas


  • Render Mode ——Screen Space-Overlay--(屏幕空间-覆盖)

Screen Space-Overlay

此设置时,Canvas会填满整个屏幕,并将Canvas下面所有的UI元素置于屏幕的最上层,Canvas将一直覆盖场景中普通的3D GameObject。


被遮挡的unitychan
  • Pixel Perfect (Screen Space modes only) --像素完美(仅限屏幕空间模式)

启用pixelPerfect可以使元素看起来更清晰并防止模糊。勾选不启用抗锯齿(还在实验中,暂无截图)。

  • Sort Order (Screen Space modes only) -- 排序

Canvas深度,数值越大,显示的优先级就越高,也就是数值大的Canvas会遮挡住数值小的Canvas。


图标把背景覆盖

背景把图标覆盖
  • Target Display

此设置使Canvas渲染到指定的显示中。支持的辅助显示器(例如监视器)的最大数量为8.。

  • Additional Shader Channels

最新几个版本中拥有的特性,提供给Shader使用的参数。此处不太了解。


  • Render Mode ——Screen Space-Camera--(屏幕空间-摄像机)

Screen Space-Camera
  • Pixel Perfect (Screen Space modes only) --像素完美(仅限屏幕空间模式)

启用pixelPerfect可以使元素看起来更清晰并防止模糊。勾选不启用抗锯齿(还在实验中,暂无截图)。

  • Render Camera -- 渲染摄像机

指定Canvas渲染在哪一个摄像机上

  • Plane Distance -- 画布距离摄像机的距离

当Camera的Projection为Orthograhic时,此值得改变仅仅会改变Canvas的Pos Z;
当Camera的Projection为Perspective时,此值得不仅会改变Canvas的Pos Z,还会影响Scale。
当Plane Distance等于Camera的Clipping Planes的Near时 ,相当于Render Mode 是 Screen Space-Overlay 的效果,当Plane Distance等于Camera的Clipping Planes的Far时,Canvas在所有物体的后面。

未被遮挡的unitychan
  • Sorting Layer -- 画布深度设置

Sorting Layer,可为UGUI设置画布深度,在下拉菜单中点击“Add Sorting Layer”按钮进入标签和层的设置界面,或者点击导航菜单->edit->Project Settings->Tags and Layers进入该页面。可以点击“+”添加Layer,或者点击“-”删除Layer。画布所使用的Sorting Layer越排在下面,显示的优先级也就越高。

图标把背景覆盖
背景把图标覆盖
  • Order in Layer -- 相同深度中的层级关系

在相同的Layer中区别显示层级关系的设定,相同的Layer中Order in Layer 越高,显示的优先级也就越高。


图标把背景覆盖
背景把图标覆盖

  • Render Mode ——World Space--(世界空间)

World Space即世界控件模式。在此模式下,Canvas被视为与场景中其他普通游戏对象性质相同的类似于一张面片(Plane)的游戏物体。在此模式下我们可以手动设置RectTransform数值,来改变Canvas在世界中的位置选择大小等。当所用UI为场景中的一部分时,我们可以使用这种模式。

Render Mode ——World Space
  • Event Camera -- 指定接受事件的摄像机

此处在我使用时World Space模式下,Event Camera为空也可以执行按钮点击事件,摸索中~~~~~

  • Sorting Layer -- 画布深度设置(与之前的效果相同)
  • Order in Layer -- 相同深度中的层级关系(与之前的效果相同)

不断学习中。整理出来忘记时看看,有错误的地方感谢指出。

参考链接:

【Unity3d游戏开发】浅谈UGUI中的Canvas以及三种画布渲染模式

Unity2017.1官方UGUI文档翻译——Canvas

Unity文档——Canvas

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容