找回密码
注册

QQ登录

独立游戏 >
独立动画 >
独立音乐 >

新版Prefab的一些梳理

前言Unity的Prefab相信大家一定很熟悉了,但是用起来那叫个又爱 ...

《我叫MT4》游戏测评——简单地从交互设计的角度分析

1、进去游戏后,会先播放一段动画。这段CG做得很不错,镜头、人 ...

Unity导入模型出现多层UV问题解决

在做项目优化的时候发现,游戏中的模型占用了很高的内存,然后就 ...

Substance Painter入门学习笔记 -8 油桶制作

【前言】 上一篇介绍了油桶的制作,以及到SP中如何烘焙 ...

Substance Painter入门学习笔记 -7 日记本-3

【前言】 这篇继续研究SP功能,用它绘制前边制作的日记 ...

Substance Painter入门学习笔记 -5

【前言】 继续 【研究】 三、调整和做旧。 首先调整做旧弹体 ...

Substance Painter入门学习笔记 -4

【前言】 继续 Substance Painter 以下简称SP。 【研究】 第二 ...

Substance Painter入门学习笔记 -3

【前言】 前两篇粗略介绍了一下该软件的操作方法。这一篇 ...

Substance Painter入门学习笔记 -2

【前言】 接着上一篇制作。 【学习】 操作三 做旧 现实 ...

Substance Painter入门学习笔记 -6 油桶制作

【前言】 上一篇通过游戏道具制作,初步了解一下Subst ...

作者: 九艺网
查看: 42|回复: 0
搜索

more +最新主题Download

more +社区更新Forums

more +随机图赏Gallery

新版Prefab的一些梳理
《我叫MT4》游戏测评——简单地从交互设计
Unity导入模型出现多层UV问题解决
Substance Painter入门学习笔记 -8 油桶制

more +文章更新News

[名词解释] DrawCall

[复制链接]
九艺网 发表于 2019-1-9 20:09:16 | 显示全部楼层 |阅读模式
查看: 42|回复: 0

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
drawcall是CPU对底层图形绘制接口的调用命令GPU执行渲染操作,渲染流程采用流水线实现,CPU和GPU并行工作,它们之间通过命令缓冲区连接,CPU向其中发送渲染命令,GPU接收并执行对应的渲染命令。

这里drawcall影响绘制的原因主要是因为每次绘制时,CPU都需要调用drawcall而每个drawcall都需要很多准备工作,检测渲染状态、提交渲染数据、提交渲染状态。而GPU本身具有很强大的计算能力,可以很快就处理完渲染任务。

当DrawCall过多,CPU就会很多额外开销用于准备工作,CPU本身负载,而这时GPU可能闲置了。

解决DrawCall:过多的DrawCall会造成CPU的性能瓶颈:大量时间消耗在DrawCall准备工作上。很显然的一个优化方向就是:尽量把小的DrawCall合并到一个大的DrawCall中,这就是批处理的思想。下面是一些具体实施方案:


合并的网格会在一次渲染任务中进行绘制,他们的渲染数据,渲染状态和shader都是一样的,因此合并的条件至少是:同材质、同贴图、同shader。最好网格顶点格式也一致。
尽量避免使用大量小的网格,当确实需要时,进行合并。
避免使用过多的材质,尽量共享材质。
合并本身有消耗,因此尽量在编辑器下进行合并
确实需要在运行时合并的,将静态的物体和动态的物体分开合并:静态的合并一次就可以,动态的只要有物体发生变换就要重新合并。
---------------------

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表