【Unity基础知识】游戏的Draw Calls是什么

发布 : Unity培训      来源:Unity干货资料

2020-04-06 23:00:10

Draw Calls是什么?

Draw Call仅仅是一条指令。Draw Call指令从CPU传到GPU,渲染一个网格。指令只指向一个被渲染的网格并且不包含任何材质信息。渲染就是在做一个巨大数量的小任务,比如计算成千上万的顶点和在屏幕上绘制以百万计的像素。每个用不同的材料的网格都需要一个单独的Draw call。

那接下来我们用unity本身自带的工具来实现。

首先新建一个项目,导入四张图片。并将其转换成 Sprite精灵。

把四张图片添加到场景中,适当合理布局,运行场景,打开 Game 窗口的 Stats,此时的 Batches为6,由于 Main Camera、平行光 和四张 Sprite的存在,所以为6。

在顶部菜单栏 Window - Sprite Packer,点击打开,由于Unity高版本已经禁用该功能(似乎Sprite Altas 代替),进行设置,使用 Sprite Packer 该功能。



设置为always Enabled

选中四张 Sprite,把他们的 Packing Tag 统一设置为 myTextures(名字随意取),便于后面打包到在一起。

使能Sprite Packer功能之后,再次顶部菜单栏 Window - Sprite Packer,点击打开,点击 pack,即可把四张图打包在一起。

再次运行场景,场景中的游戏物体依然是之前的6个,但是Batches已经变为3了,具体如下图,是由于 Sprite Packer,把四张Sprite图,打包在一起的缘故,如果更多的Sprite打包,性能优化效果更明显。

通过上述介绍,想必大家对游戏的Draw Call优化有了初步的了解,这节课就先上到这里,我们下期再见~

THE END  

声明:本站稿件版权均属中公教育优就业所有,未经许可不得擅自转载。

领取零基础自学IT资源

涉及方向有Java、Web前端、UI设计、软件测试、python等科目,内容包含学习路线、视频、源码等

点击申请领取资料

点击查看资料详情 

收起 


 相关推荐

问题解答专区
返回顶部