NGUI-实例化问题】的更多相关文章

1 渲染流程 NGUI的渲染流程其实就是把Widget组件生成Mesh所需要的缓存数据,然后生成对应的DrallCall组合对应数据,生成渲染需要的Mesh数据,提交渲染. Widget(数据) UIGeometry被UIWidget实例化之后,通过UIWidget的子类,也就是UISprit,UILabel等,在OnFill()函数里算出所需的Geometry缓存(顶点数,UV,Color,法线,切线), 参考Sprite的Fill函数为例,根据Widget的绘制区域.颜色.UV等信息生产顶点…
上图是一个简要的NGUI的图形工作流程,UIGeometry被UIWidget实例化之后,通过UIWidget的子类,也就是UISprit,UILabel等,在OnFill()函数里算出所需的Geometry缓存(顶点数,UV,Color,法线,切线).PS:之所以要生成这些数据,是为了之后生成mesh来渲染 而UIPanel,通过遍历自己子类下所有的UIWidget组件(已经按深度排序),先创建一个UIDrawCall,然后把该Widget的material,texture,shader对象以…
NGUI打开界面太慢了,起初一直以为是unity的问题,最近经过我的全面测试我发现这和unity没有关系.一般一个比较复杂的界面大概需要150个GameObject  或者 UISprite .我用NGUI直接载入发现竟然需要250多毫秒,仅仅只是两张小图.同样的GameObject 我用unity2d的Sprite载入只需要70多毫米,可见Unity2d的效率要比NGUI高多少..我可能说的不完全对,因为U3D是闭源的,我只能猜测. 在普及一下基础知识.       C#   1 2 Game…
UIRoot 管理 scalePixelPerfect : 像素匹配,图片不会被缩放,除非屏幕高度小于 Minimum Height 或者大于 maximum  Height,如果那样的话,就使用 FixedSize. FixedSize : 图片都会被等比缩放. FixedSizeOnMobile : 意思是PC用 PixelPerfect,手机用 FixedSize. Sprite的各种类型 Simple: 简单的填充,缩放 Sliced: 九宫格,要设置好border Tiled: 重复平…
本文链接地址: Unity3D NGUI动态创建按钮 本例仅以熟悉NGUI组件功能为目的,想快捷简便的创建按钮或其它游戏物体请参考 “Unity3D 动态实例化Prefab” 以动态创建服务器列表为例. public UIAtlas mAtlas; public UIFont mFont; public string mSriteName; public GameObject Playerlist; /// <summary> /// 动态加载一个NGUI按钮 /// </summary…
以下是 NGUI HUD Text 实现的: 基本原理: 1. 在角色头顶绑一个点 Pivot,用于对齐 2. 因为界面总是覆盖在人物头顶信息的上面,所以将 UIRoot 分为2个 Panel:1) GUI,用于画界面,Depth 较大 2) HUDPanel,用于画人物头顶文字及血条,Depth 较小 (1和2是最重要的) 3. 先使用 NGUI 实现一套管理人物头顶信息的类(或若干个类),名为 HUDText,他包含了各种功能(设置名字.名字颜色.血条等) 4. 将 HUDText 存为 P…
原地址:http://www.xuanyusong.com/archives/3075 李剑英的CSLight入门指南文档撰写者:GraphicQQ: 1065147807 一. CSLIGHT 作者简介 CSLight的作者是李剑英,一个有着美丽心灵的游戏圈程序员,群中人称李总,他的技术群是:[低端编程高端研究–223823428]. 二. CSLIGHT 为何而生 CSLight 最初出现的目的是为了解决Unity3D在IOS平台上的代码热更新的问题. 因为IOS平台上的代码热更新问题无法通…
原地址:http://www.xuanyusong.com/archives/3088 这两天一直在研究CSLight,目前Unity热更新的方式有两种,一种是ulua这个网上的例子已经很多了.还有一种就是CSLight.其实我更希望CSLight可以趋向成熟,因为它的语法就是C#,但是有些C#的标准语法用不了.这两天我学习的做了一个例子,也把我遇到的坑记录一下. 1.在github上下载CSLight,当我把DLL拖进项目的时候会报错.原因是CSLight的dll和NGUI的冲突了,所以我直接…
原地址:http://blog.sina.com.cn/s/blog_62df69790101gy7t.html 1 关于美术效果图 美术出效果图总是基于某个固定尺寸.移动设备的分辨率却有太多不同的方案,比如960*640,1024*768,1920*1080.何解? 让美术按某个固定尺寸做即可,比如按1920*1080,然后在实际设备上按比例缩放即可.这里引用别人博客里几张图说明,懒得自己画了.   美术效果图如下: 实际手机上如果看来较细的分辨率时效果如下图 实际手机上如果看来较胖的分辨率时…
最终效果如下: 实现ScrollView主要是NGUI的三个脚本"UIDraggable Panel","UIGrid","UIDrag Panel Contents" 1.首先创建一个UIRoot 2D 更改Anchor为Anchor-Left,并设置UIAnchor的Side属性为Left: 2.在Panel 添加一个Panel,并命名为ClippedPanel:添加脚本UIDragpanel 3.建立ScrollView表格:在Clippe…