NGUI Draw Calls优化

1.尽量少使用Panel

2.Panel下面的子物体,尽量使用同一个图集

3.尽量控制使用动态字体,不要大量使用动态字体控件,如果可以的话,将字体也做成图集

4.如果同一个Panel下,必须使用多个图集,或使用了动态字体,需要注意下控件的深度,使用同一个图集的控件,尽量放在同一段深度区间之内不要与其他图集穿插,例如:

A1、B1、C1控件使用AA图集,A2、B2、C2控件使用BB图集,A3、B3、C3控件使用动态字体那么可以这样划分:

A1、B1、C1使用深度区间为:1 - 10

A2、B2、C2使用深度区间为:11 - 20

A3、B3、C3使用深度区间为:21 - 30

时间: 2024-10-10 00:13:04

NGUI Draw Calls优化的相关文章

深入浅出聊优化:从Draw Calls到GC

c#语言规范 阅读目录 前言: 看看优化需要从哪里着手? CPU的方面的优化: GPU的优化 内存的优化 更新,使用Unity Profiler工具检测内存 回到目录 前言: 刚开始写这篇文章的时候选了一个很土的题目...<Unity3D优化全解析>.因为这是一篇临时起意才写的文章,而且陈述的都是既有的事实,因而给自己“文(dou)学(bi)”加工留下的余地就少了很多.但又觉得这块是不得不提的一个地方,平时见到很多人对此处也给予了忽略了事,需要时才去网上扒一些只言片语的资料.也恰逢年前,寻思着

深入浅出聊Unity3D项目优化:从Draw Calls到GC

前言: 刚开始写这篇文章的时候选了一个很土的题目...<Unity3D优化全解析>.因为这是一篇临时起意才写的文章,而且陈述的都是既有的事实,因而给自己“文(dou)学(bi)”加工留下的余地就少了很多.但又觉得这块是不得不提的一个地方,平时见到很多人对此处也给予了忽略了事,需要时才去网上扒一些只言片语的资料.也恰逢年前,寻思着周末认真写点东西遇到节假日没准也没什么人读,所以索性就写了这篇临时的文章.题目很土,因为用了指向性很明确的“Unity3D”,让人少了遐(瞎)想的空间,同时用了“高大全

深入浅出聊Unity3D项目优化:从Draw Calls到GC (难度2 推荐5)

原文出处: 慕容小匹夫的博客(@慕容小匹夫) 前言: 刚开始写这篇文章的时候选了一个很土的题目...<Unity3D优化全解析>.因为这是一篇临时起意才写的文章,而且陈述的都是既有的事实,因而给自己"文(dou)学(bi)"加工留下的余地就少了很多.但又觉得这块是不得不提的一个地方,平时见到很多人对此处也给予了忽略了事,需要时才去网上扒一些只言片语的资料.也恰逢年前,寻思着周末认真写点东西遇到节假日没准也没什么人读,所以索性就写了这篇临时的文章.题目很土,因为用了指向性很明

3.NGUI Draw Call(渲染调用)

在Unity中,每次引擎准备数据并通知GPU的过程称为一次Draw Call.Draw Call值越低,会得到更好的渲染性能. NGUI 查看Draw工具(NGUI-OPEN-Draw Call Tool) NGUI 方面的Draw Call 优化: (1)     打包图集 一.每个材质/纹理的渲染一定是会产生DrawCall的,这个DrawCall只能通过打包图集来进行优化. 二.从功能角度进行划分,例如UI可以划分为公共部分,以及每个具体的界面,功能上,显示上密切相关的图片打包到一起  

Unity对象与Draw Calls的关系

什么是Draw Calls? 首先我们先来了解一下,什么叫做“Draw Calls”:一个Draw Call,等于呼叫一次 DrawIndexedPrimitive (DX) or glDrawElements (OGL),等于一个 Batch. 摸过 DirectX 或 OpenGL 的人来说,对 DrawIndexedPrimitive 与 glDrawElements 这 API 一定不陌生.当我们准备好资料 (通常为三角面的顶点资讯) 要 GPU 划出来时,一定得呼叫这个函式.换句话说,

NGUI UI DrawCall 优化

首先要明确Unity中的drawcall定义: 每次引擎准备数据并通知GPU的过程称为一次Draw Call. Unity(或者说基本所有图形引擎)生成一帧画面的处理过程大致可以这样简化描述:引擎首先经过简单的可见性测试,确定摄像机可以看到的物体,然后把这些物体的顶点(包括本地位置.法线.UV等),(顶点如何组成三角形),变换(就是物体的位置.旋转.缩放.以及摄像机位置等),相关光源,纹理,渲染方式(由材质/Shader决定)等数据准备好,然后通知图形API——或者就简单地看作是通知GPU——开

在NGUI中高效优化UIScrollView之UIWrapContent的简介以及使用

前言: 1.我使用的NGUI版本为 v3.7.5,不知道老版的NGUI是否有UIWrapContent 这个脚本. 2.本文讲解主要以图片显示的例子为主,本文例子UIScrollView是水平方向,一页数量为6个cell,cell上显示的数字是其处于整个列表中的index,index 从0开始计数. 一.使用UIWrapContent的原因以及大致原理 做UI的时候经常会做一些列表来显示商品啦,任务什么的,而且当这些列表数量很多,一页显示不完的时候,又会使用UIScrollView,这样虽然实现

draw call 理解和优化

draw call是openGL的描绘次数(directX没怎么研究,但原理应该差不多)一个简单的openGL的绘图次序是:设置颜色→绘图方式→顶点座标→绘制→结束.每帧都会重复以上的步骤.这就是一次draw call 如果有两个model,那么需要  设置颜色→绘图方式→顶点座标A→绘制→结束.设置颜色→绘图方式→顶点座标B→绘制→结束.两次draw calls;也就是说在openGl绘制前,如果色彩通道(color filter),绘图方式(shader),顶点座标(model)不同的情况下

unity3d优化总结篇

转自http://www.unitymanual.com/thread-21597-1-1.html 此总结由自己经验及网上收集整理优化内容 包括:1.代码方面:2.函数使用方面:3.ngui注意方面:4.数学运算方面:5.内存方面:6.垃圾回收方面 等等...本着相互交流 共同进步的原则 好了,总结如下: 1. 尽量避免每帧处理,可以每隔几帧处理一次 比如: [C#] 纯文本查看 复制代码 function Update() { DoSomeThing(); } 可改为每5帧处理一次: [C#