NGUI源码分析(一) 核心类UIDrawCall
来源:互联网 发布:android程序员工资 编辑:程序博客网 时间:2024/06/06 04:16
前阵子一直想研究一下NGUI的源码,打开一看代码很多代码很庞大不知道从何入手,然后我看代码的方法搞错了,总想一下子就把类之间的关系理清楚,看到局部的代码没看懂又老是不自觉的沉陷其中,结果是这里看懂一点,那里又没看懂,搞的我一知半解又一头雾水,结果我放弃了。后来无意中有个网友告诉我,研究代码一开始不能思路铺的太开,一开始应该从最核心的部分看起,然后一层一层的向外围展开,一次只看一个类或一个方法,别想看A的时候又想看B,遇到不懂的时候可以先放着,特别时遇到很复杂的调用关系的代码时千万不要深陷其中。之后我完全按照这个网友的建议,从最核心的一小部分开始着手,比如我看DrawCall 类的时候完全不管Widget和Panel,我只关心这个类对外开放什么接口,需要什么数据等等,结果发现这种方法效果奇佳。
废话不多说切入正题,DrawCall是NGUI最核心的一个类,它负责把顶点,UV,颜色等数据输入到网格和构建材质,最终绘制出我们看到的UI图形.
下面是UIDrawCall的关键方法的介绍:
5.把TestDrawCall脚本挂到场景的Main Camera上去
6.运行Uinty3d,切换到场景,就可以看到贴图被绘制出来了:
总结:UIDraw类其实并不复杂,它并不关心谁调用了它,我们完全可以把它独立出来,只要外部传入顶点,UV,颜色,贴图等信息给它,就可以绘制图形了。
测试代码的链接是http://pan.baidu.com/s/1i3GRbtb
原文地址:http://www.cnblogs.com/rocky300/articles/4674046.html
- NGUI源码分析(一) 核心类UIDrawCall
- NGUI源码分析之----UIDrawCall
- NGUI之UIWidget , UIGeometry & UIDrawCall(一)
- Launcher3 源码分析(一) 整体结构及核心类
- Zepto源码分析一~核心方法
- mosquitto 源码分析 (一)核心数据结构
- NGUI所见即所得之UIWidget , UIGeometry & UIDrawCall
- NGUI所见即所得之UIWidget , UIGeometry & UIDrawCall
- Unity3d:NGUI所见即所得之UIWidget , UIGeometry & UIDrawCall
- NGUI所见即所得之UIWidget , UIGeometry & UIDrawCall
- NGUI所见即所得之UIWidget , UIGeometry & UIDrawCall
- tomcat6源码分析一(核心模块分析)
- tomcat6源码分析一(核心模块分析)
- NGUI源码分析(二) UIWidget
- NGUI源码分析(三) UISprite
- NGUI源码分析(五) UIPanel
- NGUI研究——NGUI所见即所得之UIWidget , UIGeometry & UIDrawCall
- uidrawcall
- Java多线程/并发09、浅谈volatile
- BZOJ 4236 JOIOJI
- servlet中web.xml配置
- unity打印日志到文件
- Session的使用和Session的生命周期
- NGUI源码分析(一) 核心类UIDrawCall
- xcode8 打包 ipa 四种方法
- Tomcat免安装版的环境变量配置
- Spring与jbpm的整合
- 谈谈类之间的关联关系与依赖关系
- 用JNI实现与原生代码通信
- Android 使用GridView来实现类似RadioButton的多行单选功能
- jdk1.8日期util类
- 添加视频播放功能、鼠标点击人物移动