在我们的实训项目中,本人主要负责UI的设计以及unity中UI界面的代码编写部分。
由于之前没有对Unity进行过深入的了解,于是在实训开始的初期,我首先对于unity中的UI界面部分的功能进行了了解。
Canvas
在进行Unity的界面编写时,Canvas是一个很基本的工具,是用于存放所有UI元素的地方。所有的UI元素都必须是Canvas的自对象。
Canvas是一个画布,就像我们绘图用的图纸一样,所有的控件都必须在Canvas中才能被绘制出来,在其他地方则不能被绘制出来。如果场景中没有画布,那么我们创建任何一个UI元素,都会自动创建画布,并且将新元素置于其下。
在Canvas上进行绘制时,首先我们要知道,画布上的图形绘制顺序。
1、对于处于同一个层次的组件来说,先创建的组件先绘制,后创建的组件后绘制。
2、当控件处于父子关系时,先绘制子物体,再绘制出父物体。
其次,在一个场景中,Canvas的数量和层级都没有限制。父子Canvas用的是相同的渲染模式。
Canvas的三种渲染模式如下:
Screen Space - Overlay(覆盖模式):画布填满了整个屏幕,并把所有的UI元素放在了屏幕的最上层。如果屏幕的尺寸改变,画布也会自动改变尺寸来匹配屏幕。典型例子:大量窗口、文本和按钮的策略游戏。