Unity5.3——UI之Canvas

原文:http://docs.unity3d.com/Manual/UISystem.html

Canvas

所有的UI都应该放在Canvas里面(子层)。Canvas是一个带有Canvas组件的Game Object。
所有的UI都应该是Canvas的孩子(子层;子节点)

创建一个新的UI元素,比如用菜单栏的GameObject>UI>Image创建一个Image(图片),如果在Scene上没有Canvas,将会自动创建一个Canvas,这个UI元素(例子中这里指的图片)会作为Canvas的子层被创建。

在Scene View(场景视图)中,Canvas将显示成矩形.这将使得定位UI变得很容易,而不需要运行游戏观看。

Canvas使用EventSystem(事件系统)对象去帮助通知系统(画面更新的机制)

Draw order of elements(元素绘制的顺序_上下关系)

UI元素绘制顺序和在Hierarchy(层级视图)中的顺序。后面的将在更早的上面绘制。

改变元素的层级关系(绘制顺序,上下关系),可以通过拖拽,进行简单的排序。也可以通过脚本:使用使用Transform组件上的方法:SetAsFirstSibing,SetAsLastSibing和SetSiblingIndex。

Render Modes(渲染模式)

1.在screen空间中渲染
2.在world空间中渲染

Screen Space-Overlay

在这个渲染模式中,UI元素将在场景的上面。如果场景改变大小或改变分辨率,Canvas将自动改变大小去适配。

Screen Space-Camera

这和Screen Space-Overlay类似,但是在这个模式中,这个Canvas放置在了给定距离的摄像机的前面。这些UI元素都是通过摄像机绘制的。这意味着摄像机影响UI的外观。如果摄像机设置为Perspective(透视视角),UI元素将会通过透明视角渲染,通过摄像机可视区域控制。
如果屏幕改变大小或改变分辨率,或摄像机frustrum改变,Canvas将自动改变大小去适配。

World Space

在这个绘制模式中,Canvas将和场景中的其他对象一样显示。Scene可以通过手动设置Rect Transform 来控制大小。在场景中,UI元素将绘制在其他基于3D放置的对象的钱前面或后面。对于UI作为世界的一部分是有用的。也被称为”diegetic interface”。

时间: 2024-11-16 11:03:37

Unity5.3——UI之Canvas的相关文章

unity5,UI Button too small on device than in Game View解决办法

假设测试设备为iphone5(横屏).下面说明如何使真机上ui显示效果与Game View中一致. 1,首先Game View左上角屏幕规格选 iPhone 5 Wide (16:9),如图: 2,在Hierarchy中选择Canvas,进入其Inspector面板,将其中Ui Scale Mode由Constant Pixel Size改为Scale With Screen Size,并将Reference Resolution改为iPhone5(横屏)的分辨率 X:1136,Y:640,如图

创新高性能移动 UI 框架-Canvas UI 框架

WebView 里无法获得的能力虽然是「体验增强」与「端基本能力」,但现都基本上有成熟解决方法.但后期的 UI 和 Layout 的性能反而是目前 Web 技术欠缺的.所以,无论是 Titanium 与 React Native 都是解决性能作为探索的出发点. 性能慢与快的分水岭 慢与快的标准,是按照每秒大于等于 60 FPS(60 帧每秒) 的理论,而为什么是 60 FPS,这不多描述. 按此理论,那么「每帧」里所有的操作都必须在 16ms 完成. WebView 里 UI 性能慢的原因 We

Siki_Unity_2-4_UGUI_Unity5.1 UI 案例学习

Unity 2-4 UGUI Unity5.1 UI 案例学习 任务1:UGUI简介 什么是GUI: 游戏的开始菜单 RPG游戏的菜单栏.侧边栏和功能栏(比如背包系统.任务列表等) 设计用来控制移动的虚拟杆和攻击按钮 UGUI: Unity内置 GUI也可以用第三方插件实现:如NGUI.DFGUI等 任务2:游戏案例介绍 任务3:创建游戏菜单 UGUI中的组件: UI -> Panel -- 面板 Button -- 按钮 Text -- 文本 Image -- 图片 Raw Image -- 

UGUI-1.Canvas

2015-06-22 1.UGUI Canvas 画布 The Canvas component represents the abstract space in which the UI is laid out and rendered. All UI elements must be children of a GameObject that has a Canvas component attached. When you create a UI element object from t

Unity5UGUI 官方教程学习笔记(一)Canvas

Canvas Canvas是控制一组UI元素将被渲染 所有的UI元素必须是Canvas下的子物体 一个场景中可以拥有多个Canvas 在创建UI元素时,如果没有Canvas,将会自动创建Canvas 并将该UI作为Canvas的子物体 Canvas拥有多个渲染模式 Screen Space - Overlay:  默认的渲染模式 Pixel Perfect:勾选后,像素在呈现时将会调整到最近的像素  在某些场景下  可以进行锐化 Screen Space - Camera: 由一个特定的摄像机进

02 Canvas画布

学习笔记适合新手,如有错误请指正.?号处也请各位指点下,谢谢. Canvas画布是承载所有UI元素的区域 所有的UI元素都必须是Canvas的子对象 创建画布: 点击导航菜单>“GameObject”>”UI“>“Canvas”导航栏 Render Mode:渲染模式(Screen Space—Overlay.Screen Space—Camera.World Space) Pixel Perfect:只有RenderMode为Screen类型才有的选项,使UI元素像素对应,效果是边缘清

深入理解Canvas Scaler

Canvas Scaler: 这是一个理解起来相当繁琐复杂的一个组件,但又是一个至关重要的组件,不彻底了解它,可以说对UGUI的布局和所谓的"自适应"就没有一个完整的认识. Canvas Scale指的是UI Canvas整体的缩放比例,这个值在Canvas 的Render Mode为 Screen Space – Overlay 的情况下默认为1,在 Canvas 的 Render Mode 为 Screen Space – Camera 的情况下则不一定为1,会受到渲染UI的摄像机

如何让UI屏幕自适应呢

在打包或者发布版本的时候肯定要适应不同型号的手机,而制作的UI之前都是把锚点固定好的,为啦不让UI在不同的手机上露馅,我们只能让UI自动拉伸,只需要在UI的canvas上面挂一个脚本就可以啦,代码如下 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace Game.Utility { public class CavansCont

Unity5.6之前版本VRTK插件基础交互

一.VR运行环境配置: 安装steam,在steam上安装SteamVR驱动. 在Unity项目中需要导入VRTool插件包(已上传服务器),里面包含两个插件一个是SteamVR插件,一个是VRTK插件,这两个插件也可以直接在Unity的商店中进行下载.这两个插件要求的Unity最低版本要5.6. 二.VR项目开发: 1.  基础组件: VR要实现人物在场景中的初始化需要以下物体: 这两个物体可以在VRTK中的任意示例场景中找到: 建议第二个例子中的物体.将这两个物体直接做成预制体,然后再将预制