UGUI-组件
2015-06-22
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 the menu (GameObject > Create UI), a Canvas object will be created automatically if there isn’t one in the scene already.
Canvas组件代表存放和渲染UI控件的空间,所有的UI元素必须是包含Canvas组件对象的子元素,如果单独从菜单中创建一个UI元素,如果Scene场景中没有Canvas,系统会自动为元素创建一个Canvas父对象。
Render Mode:渲染模式
1.ScreenSpace-OverLay:UI覆盖整个屏幕,所有的GameObject对象都在UI的后方(由于UI场景非常大,将GameObject放大才能明显观查到)
可以将OverLay渲染模式看做"Screen Space-Camera"渲梁方式集合中的一个对象(其中Render Camera=MainCamera,PlaneDistance=0)
Pixel Perfect:不使用抗锯齿功能,使每个像素清晰的显示,防止在某些情况下产生的模糊。如果场景中有大量的元素需要缩放,移动,或者包含较精细的动画,不使用Pixel Perfect功能(不禁用抗锯齿功能),可以使动画、移动等平滑。
Sort Order:排序次序,Sort Order越大,在平面上的显示越靠前;
2.ScreenSpace-Camera:用一个像机接收UI内容(把一个含有控件的平面放在距相机一定位置来显示UI,UI和其前后的GameObject对象会互相产生遮挡效果)
Render Camera:用来渲染UI的Camera(且this.Canvas所含的UI内容只能在Render Camera中才能渲染),即使UI在场景中其它相机的范围内,其它相机也不会渲染;
Plane Distance:Canvas到相机的垂直距离,Canvas在场景中的尺寸和位置决定于Render Camera 的Field of View 和 Plane Distance,
Plane Distance更重要的作用是决定了场景中的GameObject对象在UI(this.Canvas所渲染的UI)的前方还是后方;
Sorting Layer:Canvas所属的层(层的分类在:Menu->Edit->Project Setting->Tags and Layers->Sorting Layers 在SortingLayers中排序越靠下的层,在屏幕上显示越靠前)
Order in Layer:在所属层中的排序次序,值越大,在所属层中越靠前
3.WorldSpace:将UI做为3D场景的一部分,类似gameObject
Event Camera:事件相机,UI中的交互事件(如点击,输入等)能且只能被Event Camera执行(在WorldSpace模式下如果UI在Scene场景中的任何像相机范围内,则相机可以观查到UI)
Canvas Scaler:画布内容缩放
The Canvas Scaler component is used for controlling the overall scale and pixel density of UI elements in the Canvas. This scaling affects everything under the Canvas, including font sizes and image borders.
Canvas Scaler 组件用来控制画布中全部元素的缩放和像素密度。这个缩放影响画布中的所有元素包括字体大小和图片边框
1.Constant Pixel Size: 确保画布中的元素保持不变的像素大小,不考虑屏幕的尺寸
Scale Factor(缩放系数):Canvas中的所有元素按Scale Factor进行缩放(Scale FactorScales all UI elements in the Canvas by this factor.)
Reference Pixels Per Unit(每个单元所引用(包含)的像素数):
(If a sprite has this ‘Pixels Per Unit’ setting, then one pixel in the sprite will cover one unit in the UI.如果一个精灵(Sprite子图片)有自已的Pixels Per Unit设置,将以精灵自身的设置优先)
2.Scale With Screen Size: 确保画布中的元素和屏幕适配,元素宽度随屏幕宽度缩放,元素高度按元素宽高比随宽度缩放
Math=0时按宽度缩放,Math=1时按高度缩放
3.Constant Physical Size: 不变的物理大小,不考虑屏幕的尺寸和缩放,使用Constant Physical Size进行布局,无论不同计算机的像素尺寸是多少,图像的物理宽度都是固定的
Graphic Raycaster
?
Image
Image Type:
Simple:常规缩放(Preserve Aspect:保持宽高比)
Slice:图片在ImageEditor中修改边框数据后,图片会产生边框
Tiled:平铺,如果有边框,内部平铺
UGUI-组件的更多相关文章
- UGUI 快捷键创建UGUI组件
使用NGUI的时候还有xxx快捷键创建, spirte,label,button等等. 在UGUI里面的时候好像是没有快捷键的. 不知道以后多久才能有这个功能. 在家里闲无聊的时候写了一个脚本, ...
- UGUI组件之快速消息提示(飘字)
效果预览 使用情景 几乎每一个游戏都会有这种飘字提示,实现起来并不复杂, 我把它做了一个组件. 开箱即可使用,无需二次开发,如果效果不满意,开放源码,方便进行调优. 组件源码 核心代码 每次将飘字的请 ...
- Unity3D - UGUI组件的中英文对照
- 基于Shader实现的UGUI描边解决方案
基于Shader实现的UGUI描边解决方案 前言 大扎好,我系狗猥.当大家都以为我鸽了的时候,我又出现了,这也是一种鸽.创业两年失败后归来,今天想给大家分享一个我最近研究出来的好康的,比游戏还刺激,还 ...
- Unity3D学习笔记(十九):UGUI、Image、Text、Button
UGUI:Unity官方最新,与NGUI同源 UI:User Interface(用户的操作界面),图片+文字 UGUI的组件: 1.创建UGUI组件时,会默认创建Canvas(画布)和EventSy ...
- Unity3D - UGUI的手动搭建
了解UGUI组件的搭建方式,有助于搭建我们自己的UI界面. Text 文本 text 是UGUI中的基本控件,在Hierarchyi面板创建一个空物体 - 给这个空物体添加一个Text组件即可实现与t ...
- Unity3d UGUI插件之TSTableView
TSTableView是Tacticsoft工作室开发的一款适用于UGUI的列表(Table)插件,设计灵感来源于iOS/Mac的UITableView,提供高复用.高性能的列表,其主要特点是: 采用 ...
- Unity实现滑页嵌套(解决ScrollRect嵌套冲突问题)
简介 由于项目需要+有网友咨询,所以做了个横向滑页+某一横向滑页中有竖向滑页的demo,实现有点绕弯子,但基本功能还是比较完善,发上来共享一下. 效果 思路 第一步的思路是自己判断触屏拖动位置,然后控 ...
- HoloLens开发手记 - Known issues 已知问题
本文主要提及一份问题清单,这些问题都可能对我们开发HoloLens应用造成困扰. Visual Studio 在使用VS 2015 Update 1连接HoloLens时,可能会有些小问题.但是这些小 ...
- C#中的yield return与Unity中的Coroutine(协程)(下)
Unity中的Coroutine(协程) 估计熟悉Unity的人看过或者用过StartCoroutine() 假设我们在场景中有一个UGUI组件, Image: 将以下代码绑定到Image using ...
随机推荐
- sql基本语法:
1.create database db_name; --创建数据库 2.drop database db_name; --删除数据库 3.show create database db_name\ ...
- Redis常见问题及处理方法
一.Redis状态检查 唯一标记一个redis实例的是ip和端口,前端是用tcp方式来访问redis的,我们提供给应用访问的是一个ip+63379(一般使用63379) 端口.因此我们执行如下命令检查 ...
- FPGA设计—UVM验证篇 Hello world
这里就不赘述UVM为何物了,做了半年多的FPGA设计验证工作,按需求一直是用VHDL编写测试程序,最近看了几天UVM验证方法学的书,感觉这是一种很好的验证工具,现在开始UVM的学习,于是准备用Mode ...
- videojs 动态加载视频
VideoJS dynamic source change via RESTful API 'Undefined' issue with changing RTMP source on compres ...
- jquery uploadify修改上传的文件名和显示
如果觉得看文章太麻烦,可以直接看参考:http://stackoverflow.com/questions/7707687/jquery-uploadify-change-file-name-as-i ...
- 【转】傅盛:怎样做一个创业公司CEO?
摘要 : 傅盛High聊会,泉灵姐姐给的命题作文.怎样做一个创业公司CEO,核心还是思维模式. 这次傅盛High聊会,泉灵姐姐给我的命题作文.创业要如何开始,本质还是思维模式.首先学会把一个开放式问题 ...
- ASP.NET伪静态-无法读取配置文件,因为它超过了最大文件大小的解决办法
一直都在使用微软URLRewriter,具体的使用方法我就不多说了,网上文章很多. 但最近遇到一个问题,就是当web.config文件里面设置伪静态规则过多,大于2M的时候,就报错:无法读取配置文件, ...
- Android开发之BroadcastReceiver
BroadcastReceiver:广播接收者.用来接收系统或应用中的广播. 在Android系统中,广播体现在方方面面,例如当开机完成后系统会产生一条广播,接收到这条广播就能实现开机启动服务的功能: ...
- 不关闭seLinux解决vsftpd服务本地用户不能登录问题(500 OOPS: cannot change directory:/home/***
这里不讲vsftpd的基本配置,网上教程已经太多了.这里只说seLinux的问题. 日前在CentOS6.5中安装了vsftpd,按照网上搜索的教程,配置好/etc/vsftpd/vsftpd.con ...
- Response.Redirect("");Server.Transfer("")跳转页面的区别
Response.Redirect("") Server.Transfer("") 转向其他站点 能 不能(只能站内转向) 是否可带QueryString参 ...