Unity3D NGUI,uGUI总结
跪求官方UI系统(2014年11月底已出,用原生的比用NGUI放心)
uGUI注意点
1.要防止多个canvas叠加点击穿透,canvas里面的graphics raycaster调整到恰当选项
2.防止canvas在物体上层,点击canvas却穿透到物体上,触发物体的点击的事件。请參见以下演示样例代码
using UnityEngine;
using System.Collections; public class button : MonoBehaviour
{
public void OnMouseDown()
{
if (!UnityEngine.EventSystems.EventSystem.current.IsPointerOverGameObject())
Debug.Log("aa");
}
}
3.不须要加入boxcollider。这点与NGUI不同
4.Resource目录里面的sprite居然是不能用sprite packer打包的,放在其它的目录里面能够
-------------------------------------------------------------------------------------------------------------------------------------------------------------
NGUI注意点
超级影响性能的几点
1.动画最好作用于panel而不是sprite
2.Sprite Type中的tile能不用就不用,卡死人
老版2.7.0GUI的scroll view的横竖限制是在scale里面设定的,动态字体不能用于Flash版
老版2.7.0的UIPlayTween的名字叫做UIButton Tween
16.NGUI的2DUI摄像头要将projection设置为Orthgraphic,Clipping Planes的Near要为负值不然动画不正常
NGUI的Camera的Depth要比主Camera高才干在主Camera之前显示
NGUI 和脚本中的屏幕坐标并不一致,须要进行ScreenToWorldPoint转化
NGUI要改变字体颜色须要在BMFont中设置字库图片为32位色图才行
NGUI能够输出富文本,带静态表情。动态不行
NGUI能够附加UIPanel进行方形遮罩,不规则图形还得採取其它方案
NGUI的位置记得要用localposition而不是position
NGUI的Tween动画能够通过Add Component中的NGUI->Interaction->PlayTween来控制动画的正着放或者倒着放
而且能够设置播放前启用,播放后禁用物体。include children打勾貌似出错,或者脚本中也能够写PlayReverse
NGUI中一个元素要能触发OnClick事件。必需要在UICamera的渲染范围内,位于UICamera的Event Mask包括中。并且有Collider才行
NGUI中有个OnPress(bool isPressed)能够检測按键的弹起和按下。isPressed==true,按下的那一瞬间。isPressed=false,弹起的那一瞬间
NGUI中的元素要可以互动或启用,比方button和输入框或者ScrollView等。必须加一个Collider才行
3.0.6之后的DraggablePanel的脚本名字变了。叫做DragScrollView
要启用CenterOnChild,可能须要又一次打开该场景文件并调整各个Sprite的轴是否在中心
附加UIButton后能够在组件改动面板中改动OnClick以调用脚本中的public接口
NGUI的物体变成预置然后再实例化会失去预置之外的其它物体上挂载的脚本命令调用
NGUI改动button颜色不能改动UISprite.color,须要改动UIButton.defaultcolor,并禁用再启用该button才干看到变化效果
NGUI自带的动画系统正着放倒着放和ResetToBeginning有些小bug
新版3.0.7带了个Layout布局系统,大大简化了布局繁琐程度
能够用类似的语句直接进行相对位置改动
label.leftAnchor.target = obj.transform;
label.leftAnchor.absolute = -25;
Unity3D NGUI,uGUI总结的更多相关文章
- Unity3D NGUI自适应屏幕分辨率(2014/4/17更新)
原地址:http://blog.csdn.net/asd237241291/article/details/8126619 原创文章如需转载请注明:转载自 脱莫柔Unity3D学习之旅 本文链接地址: ...
- Unity3D NGUI学习(一)血条
这次来讲讲Unity3D NGUI这个插件的学习,这个插件是收费的,不过去网上可以下载得很多可用版本.用来做用户的交互UI,学习起来比较简单 第一步,导入NGUI包 http://pan.baidu. ...
- 【转】Unity3D NGUI事件 UIEvents
原创文章如需转载请注明:转载自 脱莫柔Unity3D学习之旅 QQ群:[119706192] 本文链接地址: Unity3D NGUI事件 UIEvents UIEvents-事件系统void OnH ...
- Unity3d ngui基础教程
Unity3d ngui基础教程 NGUI教程:步骤1-Scene 1.创建一个新的场景(New Scene).2.选择并删除场景里的MainCamera.3.在NGUI菜单下选择Create a N ...
- PureMVC和Unity3D的UGUI制作一个简单的员工管理系统实例
前言: 1.关于PureMVC: MVC框架在很多项目当中拥有广泛的应用,很多时候做项目前人开坑开了一半就消失了,后人为了填补各种的坑就遭殃的不得了.嘛,程序猿大家都不喜欢像文案策划一样组织文字写东西 ...
- Unity3D中uGUI事件系统简述及使用方法总结
Unity3D的uGUI系统的将UI可能触发的事件分为12个类型,即EventTriggerType枚举的12个值.如下图所示: 先以PointerClick为例.这个是用于某点点击事件.其他事件都可 ...
- Unity3D之UGUI学习笔记(二):Rect Transform与Anchor
Rect Transform 我们都知道,Unity3D中所有的GameObject都必须要携带一个Transform组件,且该组件无法移除,那么作为UI显示的GameObject则不是携带Trans ...
- Unity3D之UGUI学习笔记(一):UGUI介绍以及Canvas
UGUI是Unity3D4.6官方提供的UI系统,支持2D和3D UI的开发. Unity3D UI史 OnGUI 在Unity4.6之前,官方提供的是OnGUI函数来开发UI界面,当然问题也比较多, ...
- Unity3D 之UGUI 文本框和编辑框
这里来讲解一下unity3D自带的UI功能,自带的UI也叫UGUI功能非常的强大,比起NGUI,更加的灵活,让用户能够更加容易的去使用. 首先创建一个文本Text 然后是文本相对应的属性 这里的属性比 ...
随机推荐
- 警惕 MySql 更新 sql 的 WHERE 从句中的 IN() 子查询时出现的陷阱
mer_stage 表有 216423 条记录,DDL: CREATE TABLE `mer_stage` ( `STAGE_ID` int(11) NOT NULL AUTO_INCREMENT, ...
- ListView.MultiChoiceModeListener
参考:http://www.cnblogs.com/a284628487/p/3460400.html和http://blog.csdn.net/mayingcai1987/article/detai ...
- VIM: 解决vi/vim中粘贴时行首出现很多缩进和空格的问题
解决vi/vim中粘贴时行首出现很多缩进和空格的问题 http://www.jbxue.com/LINUXjishu/12232.html 由于在secureCRT中会将原来的文本原封不动的按照字符串 ...
- HDU2527:Safe Or Unsafe(哈弗曼树)
Problem Description Javac++ 一天在看计算机的书籍的时候,看到了一个有趣的东西!每一串字符都可以被编码成一些数字来储存信息,但是不同的编码方式得到的储存空间是不一样的!并且当 ...
- js_DOM属性
.nodeType==1,指的是li, .nodeType==3,则指的文本节点. .children属性,和 .childNodes属性类似,但是只会包含元素节点,而不会包含文本节点. .child ...
- Java Interface,反射
先看代码, package reflect; //Class Word public class Word implements OfficeAble{ public static void main ...
- stdcall、cdecl、fastcall、thiscall 、naked call的汇编详解
函数调用规范 当高级语言函数被编译成机器码时,有一个问题就必须解决:因为CPU没有办法知道一个函数调用需要多少个.什么样的参数.即计算机不知道怎么给这个函数传递参数,传递参数的工作必须由函数调用者 ...
- redis(四)redis与Mybatis的无缝整合让MyBatis透明的管理缓存
redis的安装 http://liuyieyer.iteye.com/blog/2078093 redis的主从高可用 http://liuyieyer.iteye.com/blog/207809 ...
- 高级UIKit-06(UIImagePickerController)
[day07-1-getSystemImage]:获取系统相册 UIImagePickerController图片采集控制器 picker采集者,采摘者 该方法继承自:UINavigationCont ...
- html:打开新的页面
在html页面中,打开一个新的页面,有两种方式: 一.利用超链接 <a href="newurl">新页面</a> 上面代码添加了一个新链接,点击链接时会打 ...