Unity_UI学习(UGUI)
目录
01.Canvas对象和EventSystem对象
02.Canvas组件
03.RectTransform组件
04.Image组件
05.Button组件
06.Text组件
07.ScrollRect组件、Mask组件
01.Canvas对象和EventSystem对象
Canvas对象
所有游戏节目里的UI元素(纹理、图像、按钮、滑动条等)都必须位于Canvas对象下成为其子物体,Canvas又叫做画布
一个场景里可以存在多个Canvas,也可以将其他的Canvas对象作为当前Canvas对象的子节点。
在场景里面创建一个Canvas时,会自动生成一个EventSystem对象。
Canvas的RectTransform组件的属性不可直接修改,系统会根据画面的大小自动设置
EventSystem对象
EventSystem对象可将系统中发生的键盘、游戏摇杆、触摸屏等传入的信息传递给Canvas包含的UI元素。
除了上面两个组件外,Event System也包含TouchInputModule组件等
02.Canvas组件
Canvas组件可以将游戏所需要的各种UI元素放置到画面上,并进行渲染。根据渲染模式的不同,UI元素的画面配置方式也不同。
Screen Space - Overlay
默认值,UI元素都位于最顶层,可以根据画面分辨率的设置自动调节位置。
Screen Space - Camera
与前一个类似,但可以设置渲染UI的相机。这样就可以制作有透视感的UI界面等效果。
但是要注意修改UI相机的设置,避免与场景内主相机冲突。
World Space
可以向场景内其他游戏物体直接添加UI对象,如制作HUD。此时Canvas不再受RectTransform组件的影响,而受相应游戏物体位置的影响。
03.RectTransform组件
UI元素必须拥有的一个组件,类似于其他游戏物体的Transform组件
RectTransform组件包含锚点(Anchors)、枢纽(Pivot)、大小(W、H)、位置(PosX、PosY、PosZ)、旋转、比例等信息。
用一个Panel来举例说明
Panel中心的圆形(黄圈里的)为其正中心,是布局、排列UI元素时参考的基准位置,这个圆圈也是旋转轴心。
拖拽Panel的四个角(绿圈里的)可以调节Panel的大小,点击鼠标并按Alt拖拽可以同时调整4边的大小,按住Shift拖拽可以按当前Panel的比例进行大小调节
在Panel的周围有四个白色的小三角(红圈里的)是以Panel的父对象为基准的定位点(锚点)。UI对象的定位点都是以其父对象为基准的。
Anchor Preset(预设值)
Anchor Preset可将各UI元素的排列与大小等设置定义为预设。
按键盘上的Shift键和Alt键会出现不同的选项:
不按任何键:默认锚点预设
按Alt键:将当前选定UI移动到选择的预设位置进行排列
按Shift键:只改变锚点和UI元素的中心点位置不移动UI
按Alt+Shift键:将UI元素的中心移动到与锚点相同的位置
注意:在移动锚点或是中心点时要将模式切换至如下,否则会无法移动
AnchoredPosition属性
RectTransform属性顶端的PosX、PosY、PosZ是以相应的锚点为基准显示当前UI元素的位置。
Width、Height显示相应UI元素的宽、高
当改变UI元素的锚点设置后这几个属性值的名字会有所变化
Anchor属性
通过Anchor属性可设置调整UI元素的大小和对其方式。Min(X,Y)和Max(X,Y)是锚点的位置,取值均为0.0f ~ 1.0f
其他属性
04.Image组件
Image组件可以为画面添加纹理,但必须在Unity中将纹理转换为Sprite格式
Image组件的属性
Image的4种显示方式
Simple
用于固定图像长宽比例,主要适用于装饰画面的图片
固定原图像长宽比例的选项
Sliced
即使调整图像的大小,其边框外围部分的图像也不会变形,只有中间切片的图像才会随着调整的大小而缩放。
适用此选项要注意先将图片在Sprite Editor中进行设置。
Fill Center属性:勾选:显示原图像九宫格切片的中间图像
不勾选:只显示轮廓
Tiled
让图片不断重复铺满整个画面,不受Image大小影响
Filed
可以使图片沿特定方向逐渐显示直至填满,可以用来制作血量条和技能冷却的UI
RawImage组件
与Image相似,但主要是用于设置UI界面的静态背景。
05.Button组件
主要属性
Transition属性
为Button的状态变换设置外观上的变化。
Button状态:默认、获取焦点、按下、禁用
变化方式:颜色、图片、动画
注意:选择动画方式后点击AutoGenerateAnimation按钮,Unity会自动为Button生成一个动画控制器
Navigation属性
当UI界面里有多个Button时,Navigation用于设置如何通过键盘按钮移动当前焦点。
Explicit:显示指定,可以直接指定焦点要移动到的下一个Button
途中黄色的线条表示焦点移动的路径。
如果不想通过移动焦点选定某个按钮,可以设置Button的Visualize属性(相当于开关)
ButtonEvent
点击事件的触发,Unity可以为一个Button设置多个点击事件。
06.Text组件
基本属性
Text Effects
通过Outline组件可以为文字添加阴影等效果。
07.ScrollRect组件、Mask组件
ScrollRect组件区域内的UI元素可以滚动,需要进行滚动的UI元素作为ScrollRect所在对象的子物体存在
主要属性
Mask组件
Mask组件相当于一个遮罩,可以将ScrollRect显示以外的地方隐藏
Mask组件通常是与Image组件一同使用时才有效果
Unity_UI学习(UGUI)相关推荐
- [源码学习]--UGUI
学习参考 从bitbucket上获取uGUI 2019.1源码 UGUI内核大探究 事件系统 UnityEngine.UI/EventSystem/EventSystem.cs private Lis ...
- Unity3D学习——UGUI对话气泡实现
这次我们的作业,是做一个基于UGUI实现的对话气泡. 作业的选择比较多,我是看了师兄写的博客程序东的博客,发现对话气泡这类UI比较实用,在我自己玩的游戏中也用到比较多,所以这次想特别学习一下. 然后是 ...
- (二十一)unity4.6学习Ugui中文文档-------交互-Supported Events amp; Raycasters
大家好,我是孙广东. 转载请注明出处:http://write.blog.csdn.net/postedit/38922399 更全的内容请看我的游戏蛮牛地址:http://www.unitymanu ...
- Unity的UGUI用TexturePacker全自动打图集,包括九宫格切图信息
Unity的UGUI用TexturePacker全自动打图集,包括九宫格切图信息 前言 环境准备 实现过程 注意 总结 版权声明 前言 最近在学习UGUI的打图集,之前一直在用SpritePacker ...
- Unity3D游戏开发案例学习——Tanks!(基本完结)
[2020.1.12] 概述 本案例来自unity官方中级游戏教程Tanks(单机双人坦克大战) 项目同时用于Unity机器学习内容的学习,预定计划为训练可规避障碍物,欲图消灭玩家的坦克ai 第一部分 ...
- 【Unity3D入门教程】游戏开发利器UGUI的基本使用方法
前言 UGUI是Unity官方推出的新一代交互系统,与传统的GUI相比,它具有使用灵活.界面美观.支持个性化定制的特点.本文将会进行UGUI使用的简单介绍,与大家一起敲开UGUI开发的大门. 说到底, ...
- 【Unity基础】ugui的基础知识篇
文章目录 前言 一.常用用可视化控件 1.Image 2.RawImage I.和Image的区别 3.Text组件 4.画布是怎么渲染出可视化UI的? II.这里整理一下渲染相关的关系图,如下: 5 ...
- UI入门——血条制作
文章目录 实验内容 IMGUI制作简单血条 UGUI设计血条预制 动态效果展示 两种制作的优缺点 IMGUI优缺点分析 UGUI优缺点分析 预制使用方法 更新 解决血条暴露行踪问题 实验内容 实现简单 ...
- Unity3D 学习笔记4 —— UGUI+uLua游戏框架
Unity3D 学习笔记4 -- UGUI+uLua游戏框架 使用到的资料下载地址以及基础知识 框架讲解 拓展热更过程 在这里我们使用的是uLua/cstolua技术空间所以提供的UGUI+uLua的 ...
最新文章
- Linux环境搭建Hadoop伪分布模式
- zigbee vs 433
- hihocoder#1041 : 国庆出游(DFS)
- 内推|底层翻身的机会来了,快来看一看!
- 你永远都不知道你老公可以多幼稚......
- 流式大数据计算实践(4)----HBase安装
- GNU Emacs的终极扩展管理工具 — el-get
- 实用Redis操作类
- 「leetcode」93.复原IP地址【回溯算法】详解!
- 2014小米校园招聘笔试(10.13北京)
- 思科网络安全解决方案
- 经验模态分解股票波动matlab,LMD经验模态分解matlab程序——原味的
- 安卓12使用VNET免ROOT抓包微信小程序
- 方面级情感分析(一)
- 科研伦理与学术规范期末考试1题库
- emlog某涛娱乐资源网源码 自带200多条数据打包
- P6111 [USACO18JAN]MooTube S
- CPU基础知识1------Intel CPU 地址空间
- 食油大学C++程序设计题解
- 后GPT 3.0时代,主流大模型技术精要详解,走向AGI之路的大门已开
热门文章
- 电脑快捷键大全(1)
- 【book】跟开涛学搭建高可用高并发系统
- MATLAB安装后出现“License Manager Error -8?”,替换文档时报错解决方法
- Arduino使用 MAX30102心率传感器
- excel中提取月份_在Excel中自动添加月份表
- 免费好物API分享大全
- 二进制与十进制的相互转换(详解)
- Qt for Android开发环境搭建(QtCreator6.0.1+Qt5.15.2/Qt6.2.2+win10)
- 根据 Windows 激活错误代码解决问题
- bcrypt.dll怎么修复?bcrypt.dll修复工具下载