我的网站

耀世注册

联系我们

地址:海南省海口市

邮编:570521

电话:0898-08980898

传真:0898-1230-5678

行业新闻

当前位置: 首页 > 耀世资讯 > 行业新闻

什么是DrawCall?如何减少DrawCall?

添加时间:2024-03-04 12:49:40

1.什么是DrawCall

CPU调用图像编程接口。
在Shader渲染流水线的应用阶段,当CPU准备好场景数据,设置好渲染状态,就会调用DrawCall命令,开启一个渲染过程

2.为什么DrawCall多了会影响帧率

CPU每次调用DrawCall,都需要向GPU发送许多数据、状态,在发送前CPU需要从硬盘读取到显存的数据、设置的渲染状态以及调用DrawCall命令操作。一旦CPU执行完应用阶段,GPU即开始执行本次渲染。GPU渲染的速度比CPU提交命令的速度快的多。所以性能就会被CPU的提交速度所影响,如果DrawCall数量过多,CPU就会在提交命令上花费大量时间

3.如何减少DrawCall

批处理:我们可以把众多小的DrawCall合并成一个DrawCall,减少CPU提交DrawCall次数和时间,但并不是所有的情况都能合并。但是合并网格时也会比较消耗时间,因此批处理比较适合静态的网格,项目中Static被选中的物体
合并需要注意:
避免使用大量小的网格,若不可避免的话,可以考虑合并
避免使用过多的材质,相同的材质会方便我们合并

地址:海南省海口市电话:0898-08980898传真:0898-1230-5678

Copyright © 2012-2018 耀世娱乐-耀世注册登录入口 版权所有ICP备案编号:琼ICP备xxxxxxxx号

平台注册入口