Mesh Baker是一款针对Unity最新版本的游戏开发插件,是Unity游戏平台制作和合并网络、材质、贴图的插件。MeshBaker提高场景运行帧率,是一款优化插件,具有灵活的非破坏性工作流程,可以减少drawcall,降低大量贴图对内存的消耗,有效提升性能,从而帮助开发者更有效的开发游戏,欢迎有用到这款插件的朋友通过下面地址来获取!
软件特性
1、融合网格材料和,从而减少制作启用。如今包含它自已的纹理包装器!
2、固定模型和建立地图集,这样他就可以共享原材料.(静态数据/动态性配料)
3、导进实体模型里的缩放、转动和平移。
4、导出来实体模型里的缩放、转动和平移。
5、与一切颜色和材料一起使用。
6、全多原材料适用。
7、融合和透明皮肤网格。
8、3d贴图,法向,断线,全自动调节。
9、烤铺平纹理。
10、全光照贴图适用。
11、源财产未碰触。
12、简易,并没有脚本制作,在5分钟之内学习培训。
13、运行中API。
14、能够解决负缩放。
使用方法
我们在项目开发的时候经常会大量使用大规模的Mesh,导致Draw Call过高。而Mesh Baker扮演了网格烘焙器的角色,其工作原理是将网格和材质合并,从而降低渲染的Draw Call。
Texture Packing
我们常常会遇到角色网格相似,但是纹理繁杂细碎的情况。这时我们需要把纹理合并在同一张图上。纹理拼合的操作面板如下图所示:选择不同的网格来拼合,Texture Baker自动分析其Shader,Size等属性,最后点击Bake Material Into Combined Material,即可完成拼合。
Mesh Batching
在纹理拼合后已经形成为一张图片了,这时候我们需要进行Mesh拼合,即使用Mesh Baker来烘焙网格。在此,我们新建一个新的GameObject,点击Bake就把3个Mesh烘焙在一个Object上了。
同时,在进行了这两步之后,我们会发现Draw Call上的变化。
合并前
合并后
不难发现,合并前12个Draw Call,合并后只有2个,从而在一定程度上降低渲染压力。
对Skinned Mesh进行拼合
Unity引擎无法原生支持蒙皮网格的Draw Call Batching,而Mesh Baker能将多个Skinned mesh合并。
经过合并后,人物的材质已经相同,所以我们能在上图中看到这些角色只产生了一个Draw Call。同理,即使再加入更多的角色也能合并成非常少的Draw Call,从而减少渲染耗时。
除此之外, Mesh Baker还支持将Mesh Renderer与Skinned Mesh Renderer一起合并。比如开发中常用到的道具如帽子、剑等,使得角色在换装时也只产生一个Draw Call,非常实用。
在使用skinnedmesh时有几个注意点:
合并后将原始模型的Bone保持Active;
Disable原始模型的Skinned Mesh Renderer;
确保原始的Animation始终在运行;
如果需要Mesh Rendering与Skinned Mesh 一起合并,则需要保证在其在同一张Texture Atlas和Mesh容器中。