Unity ugui学习笔记 --cavas

来源:互联网 发布:骨关节功能解剖学知乎 编辑:程序博客网 时间:2024/06/05 12:05

Canvas
所有的ui元素都在 cavas的区域内。cavas是一个包含 cavas组件的gameObject。要有一个cavas是所有ui元素的父亲,即存在一个cavas是所有ui元素的根。创建一个新的ui元素比如image的步骤是:菜单栏 GameObject > UI > Image,如果场景中没有cavas会自动生成一个cavas。创建的ui元素会当作这个cavas的子结点。cavas的区域会在场景视图中。这样就不需要一直都让Game View可见,使得容易摆放ui元素位置。
元素的渲染顺序
ui元素的渲染顺序跟在Hierarchy的顺序是一致的。先创建的会先渲染。如果两个ui元素重叠了,后创建的会渲染在先创建元素上面。
简单的通过拖动改变他们在Hierarchy的顺序,就可以改变ui元素的渲染顺序。也可以通过脚本的方法SetAsFirstSibling, SetAsLastSibling, and SetSiblingIndex 改变它们的渲染顺序。
Render Modes
渲染模式
cavas有一个Render Mode选项,设置渲染模式是screen space 或者是 world space
Screen Space - Overlay
这种渲染模式把ui元素渲染在场景的最上面。如果场景的大小发生改变,cavas会适配这种改变。
Screen Space - Camera
这种模式跟Screen Space - Overlay模式很接近,但是在这种模式下,cavas会放置在指定的Camera的前面给定的距离。ui元素的渲染也是通过这个Camera,意味着Camera的设置会影响ui的外观。如果Camera设置为透视,ui元素也会设置为透视,透视畸变可以通过Camera的View来控制。如果屏幕发生大小改变,或者是camera视锥发生改变,cavas也会跟着发生变化。
World Space
这种模式下的cavas的行为就像是场景中的其他物体。cavas的区域可以通过Rect Transform手动改变,ui元素会根据在3d场景的摆放顺序确定是渲染在其它物体的前面或者是后面。当ui是世界的一部分的时候是有用的,就像是剧情元素。

0 0
原创粉丝点击