Unity3D - UGUI的初级应用】的更多相关文章

添加字体: 把下载好的字体拖拽到Project面板中 - 点击Text组件中Text属性后面的圆点 - 选择刚刚拖拽的字体即可. 创建ToggleGroup(开关组): 1.在Canvas下创建两个Toggle 2.在Canvas下创建一个空物体(命名为ToggleGroup),给ToggleGroup添加一个ToggleGroup组件 3.同时选中两个toggle,把ToggleGroup拖拽到Toggle组件的Group的位置,即完成了两个选项之间的单选(ToggleGroup组件中的All…
背景 曾几何时,在Winform中,使用MessageBox对话框是如此happy,后来还有人封装了可以选择各种图标和带隐藏详情的MessageBox,现在Unity3d UGui就没有了这样的好事情了,所有的UI都需要自己来搞定了,幸好还有各种插件,Inventory Pro中的对话框方案不失一种通用,可复用的方案. YY(自己的想法) 所谓通用对话框,如果是自己实现的话有以下几点需要解决,窗体显示控制,窗体UI布局,窗体文字显示,窗体事件回调,窗体显示动画控制,窗体显示声音控制,窗体与其他窗…
unity3d版本5.3.2p4 UGUI中ScrollView包含Viewport(Content) ScrollView包含脚本.其Movement Type一共3个选项.Elastic就是弹簧效果. viewport含有Mask脚本. Content如果需要实现根据内容自适应高度就要添加Content Size Fitter脚本.脚本里面选择Preferred Size即可. 注:如果Content没有根据内容自适应高度,内容高度大于Content的高度的话 会出现ScrollView滚动…
Unity3D中UGUI实现下拉菜单 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享.心创新!助力快速使用 UGUI 实现 下拉菜单为新手节省宝贵的时间,避免采坑! Chinar 教程效果: 1 Create Layout -- 创建布局 1. 创建下拉菜单模板 2. 设置属性 2 ChinarDemo Script -- Chinar演示脚本 3 Attentions -…
Cavas: 1.Render Model设置为:Screen Space- Camera.如果想在UI前面加特效我可以在创建一个摄像机(UIForward)深度大于这个UICamera就行了. 2.Canvas Scaler: (1)UI Scale Mode :设置Scale With Screen Size 表示以宽度为标准缩放: (2)Reference Resolution设置设计分辨率,美术出图根据这个设置出: (3)Screen Match Mode 选择 Expand 这个就是U…
U3D UGUI学习1 - 层级环境 U3D UGUI学习2 - Canvas U3D UGUI学习3 - RectTransform U3D UGUI学习4 - Text U3D UGUI学习5 - Layout和文字适配…
在开发UGUI时 我们时常需要做一个窗口拖拽的功能 先上代码 using UnityEngine; using UnityEngine.EventSystems; public class DragWindow : MonoBehaviour,IPointerDownHandler,IDragHandler { private Vector2 localMousePos; private Vector3 planeLocalPos; private RectTransform targetObj…
UGUI的Layout布局组件确实节省了我们很多代码 如果不使用Layout组件 那么光在计算UI的布局上就要花费很大的功夫 特别是动态生成其组件的时候 当然,Layout组件在大多数时候是非常好用的 也有让人头疼的时候 比如,一个组件内需要展开或者折叠 这时,刷新不及时带来的问题就出现了 比如展开时产生UI覆盖 折叠时产生UI空隙 都是让人头大的问题 幸好Unity提供了一个强制刷新UI的方法 便将此问题完美解决了 LayoutRebuilder.ForceRebuildLayoutImmed…
项目中有些信息需要以Toast的形式体现出来,不需要交互,弹出后一段时间后消失,多个Toast会向上重叠,下面是一个UGUI Toast的实现,动画部份用到了Dotween来实现 首先需要制作Toast预制体,预制体初始化后就进行淡出动画,初始化的过程中根据str长度改变父节点图片大小 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using…
Uinity版本:2017.3 最近在学Siki老师的<黑暗之光RPG>教程,由于教程内用的是NGUI实现,而笔者本人用的是UGUI,所以在这里稍微写一下自己的实现思路(大致上和NGUI一样) 一.成品 先展现实现后的效果,如下: 功能简介: 物品的添加功能暂时通过摁下X来模拟(在Update()方法中实现) 实现的功能如图所示主要有以下几个 根据相应的物品ID添加到背包中 / 如果已有物品则数量+1 物品间的拖放交换 摁住物品1秒后显示详细信息 二.代码 代码分为两部分,背包整体Canvas…
NGUI下给Sprite/image添加collider后能自适应大小,但是在UGUI下Collider是默认在(0,0)位置,size为0 因此写了个简单的脚本,效果如下(最后附代码) 1.如下图添加Box Collider 2D后的默认位置与大小 2.给需要的物体添加Script并运行后的效果: 代码: using System.Collections; using System.Collections.Generic; using UnityEngine; public class Box…
之前做游戏都是用公司自己的引擎,对于界面的适配分Android和IOS两种系统处理. 对于IOS设备,由于数量有限,只要做到 960x640  1024x769 1136x640 (当时还没有iphone6呢) 三种适配即可,所以我们对这三种屏幕做了三种不同的界面配置文件. 对于安卓设备,屏幕分辨率实在太多种,所以统一设置为1136x640的缩放比例了. 现在使用Unity制作游戏,虽然仍然可以使用原来的这一套方案,但是却显得没有这个必要了. Unity4.6新版UGUI,提供了三种基本的界面适…
了解UGUI组件的搭建方式,有助于搭建我们自己的UI界面. Text 文本 text 是UGUI中的基本控件,在Hierarchyi面板创建一个空物体 - 给这个空物体添加一个Text组件即可实现与text空间相同的功能. Image 图像 Image 是UGUI中的基本控件,在Hierarchyi面板创建一个空物体 - 给这个空物体添加一个Image组件即可实现与Image控件相同的功能. Raw Image 原始图片 Raw Image 和 Image基本相同, 功能上Raw Image比I…
转自Unity 3D for iOS 这篇文章还可以在这里找到 英语 Learn how to use Unity to make a simple 3D iOS game! 这份教程是由教程团队成员 Christine Abernathy, 他是Facebook的开发支持团队的工程师.欢迎来到第三部分,这是Unity 3D for iOS初级系列教程的最后一个部分!在这个系列的第一部分,你参观了基本的Unity工具,创建了带有一个简单角色控制机制的游戏,并且学习了如何部署你的项目到iOS上.…
转自Unity3D for iOS 这篇文章还可以在这里找到 英语 Learn how to use Unity to make a simple 3D iOS game! 这篇教材是来自教程团队成员 Christine Abernathy, 他是Facebook的开发支持团队的工程师.欢迎来到Unity3D for iOS系列教程的第二部分!在这个系列的第一部分中,你已经学习了Unity的一些基本技能来构建一个非常简单的项目,并把它部署到iOS设备上.在继续这篇教程之前,你要确认已阅读过第一部…
转自:http://www.cnblogs.com/alongu3d/archive/2013/06/01/3111738.html 欢迎来到第三部分,这是Unity 3D for iOS初级系列教程的最后一个部分!在这个系列的第一部分,你参观了基本的Unity工具,创建了带有一个简单角色控制机制的游戏,并且学习了如何部署你的项目到iOS上. 然后在这个系列的第二部分,你增强了你英勇的小方块的移动,并且给这个世界带来一些生命,它拥有了天空,草地和一个起伏的地形. 在第三部分,也是最后一部分,你将…
TSTableView是Tacticsoft工作室开发的一款适用于UGUI的列表(Table)插件,设计灵感来源于iOS/Mac的UITableView,提供高复用.高性能的列表,其主要特点是: 采用MVC模式 良好的性能和内存占用优化 复用列表项 遗憾的是它暂时不支持横向列表,需要开发者自己扩展,还有就是优化无止境. 首先介绍下TSTableView的使用方法. 上图是TSTableView编辑时的层次结构.TableViewContainer节点挂载Mask(UGUI)组件,同ScrollV…
首先从canvas的参数说起走. Canvas Component是UI布局和渲染的抽象空间,所有的UI元素都必须在此组件之下. Render Mode UI的渲染方式,有三种: Screen Space ——Overlay Screen Space ——Camera World Space Screen Space ——Overlay 在这个模式下,UI元素会始终显示在屏幕的最上方,不会受到camera的影响,也就是说,无论有没有camera,UI元素都能够正常的显示.用这个模式的好处就是可以…
从Foundation插件中抽离出的多语言.原理很简单,给Text绑定key,在程序开始时设置本地语言即可. 目录结构: LanguageEditor.cs:自定义编辑器: LanguageService.cs:负责读取语言文件供程序使用: LanguageText.cs:绑定到Text组件中: Resources文件夹:存放资源文件及配置文件: Localization文件夹:语言包,所有的语言放在该目录下,每种语言一个文件夹:根据语言设置读取相应目录下的语言文件: LocalizationC…
在UI层添加了一个fbx的模型,但是在game模式和运行中无法看到这个fbx. Canvas上面有个Render Mode  :Screen Space - Overlay.Screen Space - Camera.World Space. Screen Space - Overlay 这种渲染模式下,在场景中 UI 元素 被渲染 在屏幕上.如果屏幕大小改变或更改了分辨率,画布上将 自动更改大小,以很好的相匹配 . Screen Space - Overlay 这是类似于 Screen Spa…
DOTweenAnimation脚本: Loops循环:-1时即永久循环播放. Loops Type 是选择播放模式. Ease属性里有很多,暂时只知道Linear的效果,其他有待单独写. ID下面可以选择移动动画模式:TO or From.…
代码 using UnityEngine; using System.Collections; using System.Collections.Generic; using UnityEngine.UI; using System; [RequireComponent(typeof(Image))] public class UGUISpriteAnimation : MonoBehaviour { private Image ImageSource; private int mCurFram…
需求 这几天在公司里,项目需要将游戏游戏中的2D城堡界面在拉动的时候显示出3D的拉近效果.当时是在Cocos2d-x下实现的.回家的时候自己重新用Unity实现的了一遍. 虽然现在Unity已经到了5.0时代,从4.6时代起Unity就开始支持原生2D了,网络上大部分的教程还是NGUI.毕竟原生的也是开源的,详细以后也会慢慢取代NGUI. 解决思路 需要在拉动的过程中显示出由远及近不通层次的效果,自然想到了利用Scroll类型的控件.Unity中原生2D中使用到的时ScrollRect组件. 在…
原文地址:http://blog.csdn.net/dingkun520wy/article/details/49471789 1.Canvas的属性配置 2.Canvas Scaler的属性配置 3.根据不同的屏幕的比例动态修改缩放基准 void Start () { float standard_width = 960f; //初始宽度 float standard_height = 640f; //初始高度 float device_width = 0f; //当前设备宽度 float d…
可添加以下组件 组件包含的两个枚举参数,可以自行设定适应方式. 例如一个Text UI元素,当文字过多的时候他不会自动增加高度而导致文字不能完全显示,这时候就可以挂载这个组件,如上图设置参数,就可以自动调整高度了.…
Shader "Unlit/NewUnlitShader" { Properties { _MainTex ("Texture", 2D) = "white" {} _Color(,,,) _StencilComp( _Stencil( _StencilOp( _StencilWriteMask( _StencilReadMask( _ColorMask( _Width( } SubShader { Tags { "Queue"…
核心脚本代码 Image IMGE = transform.Find("IMGE").GetComponent<Image>();Sprite sprite1 = Resources.Load("Textrues/yutujing", typeof(Sprite)) as Sprite;IMGE.sprite = sprite1; 需要注意的是 Resources.Load 会读取Assets中Resources目录下的资源, Resources目录需要…
Mask.GetComponent<RectTransform>().anchoredPosition(子物体) = hotKey_image.rectTransform.anchoredPosition(父物体); Mask.GetComponent<RectTransform>().SetSizeWithCurrentAnchors(RectTransform.Axis.Horizontal, hotKey_image.GetComponent<Image>().G…
1.在Hierarchy面板创建能被选中的UI(Button.InputField等). 2.在Canvas上创建C#脚本 TabCutPichon. 3.编写脚本. using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.EventSystems; public class TabCutPitchOn : MonoBehaviour { // 得到Event…
一:Unity欢迎窗口对于初学者来说有很多有价值的信息,值得用户关注,以下将简要介绍这个窗口中的相关内容: 1.Video Tutorials: 提供unity相关的教程 ,包括用户手册 .组件手册以及脚本手册等内容. 2.Unity Basics: 提供Unity的基础知识,例如操作界面.工作流程.发布设置等内容.通过它可以快速了解Unity的基本操作等内容,增进对Unity的了解和认识. 3.Unity Answers: 提供Unity的 问笞交流 ,用户可以直观的提问或回答相关问题 ,所有…