勇敢心资源网

当前位置:首页 > 百科 / 正文

canvas(计算机术语)

(2020-03-08 08:30:27) 百科
canvas(计算机术语)

canvas(计算机术语)

Canvas 中文名称叫“画布”,它是游戏中所有UI组件的“容器”。一个场景中,可以允许多个Canvas对象的存在,还允许Canvas之间可以进行“嵌套”使用。需要注意的是,场景中的任何一个UI对象,都肯定是某个Canvas对象的“子级”。

基本介绍

  • 中文名:画布
  • 外文名:Canvas
  • 功能:是游戏中所有UI组件的“容器”
  • 性质:对象
1Canvas
Canvas(画布)容纳所有UI元素。Canvas是一个挂载了Canvas Component组件的Game Object,所有UI元素都必须是它的子节点。【类似NGUI的UIRoot】
若想创建一个UI元素(比如Image),点击选单Game Object > UI >Image即可。若当前场景中无Canvas,则自动创建一个Canvas,且刚建的UI元素会自动设为此Canvas的子节点。
在Scene视图中Canvas区域以一个矩形显示,帮助查看全部UI元素的位置,而不必切换到Game视图。
Canvas使用EventSystem作为讯息系统。
1.1 Draw order of elements
UI元素的绘製顺序就是它们在Hierarchy视图的排列顺序,也即由上至下依次绘製。假如两个UI元素出现重叠,则后来着绘製于先来着之上。【区别于NGUI的UIWidget.depth】
若想更改UI元素绘製顺序,只需在Hierarchy视图中拖拽它们,变更它们在Hierarchy视图的顺序。当然,也可通过Transform的脚本方法SetAsFirstSibling()、SetAsLastSibling()、SetSiblingIndex()来动态修改节点顺序。
1.2 Render Modes
Canvas的渲染模式(Render Mode)可选Screen Space或World Space。
1.2.1 Screen Space - Overlay
此模式下,UI元素在萤幕顶层。若萤幕解析度变更,则Canvas自动调整自身尺寸作自适应。(满屏显示,不受Camera属性值影响)
1.2.2 Screen Space - Camera
此模式类似Screen Space - Overlay,但区别是此模式将Canvas放置于某个Camera前固定距离。此Camera负责渲染所有UI元素,则摄像机参数(Camera Settings)直接影响UI表现。比如Camera是透视模式(Perspective),则UI元素会基于Field of View的值而扭曲变形。同样的,若萤幕解析度变更,或者视觉平截体(CameraFrustrum)改变,则Canvas自动调整自身尺寸作自适应。
1.2.3 World Space
此模式下,Canvas及其子节点与场景中其他Game Object并无区别。此时Canvas尺寸可通过RectTransform来手工设定,并且UI元素的绘製位置、顺序通过自身在3D世界的实际坐标来决定。当UI元素套用为3D世界成员时,此模式十分奏效。
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net
搜索
随机推荐

勇敢心资源网|豫ICP备19027550号