Unity工具推荐:能场景优化的插件Mesh Baker

发表于2016-07-27
评论0 1.83w浏览

    不论是手机游戏还是VR游戏,我们在开发游戏过程中总会遇到一个场景有很多资源的问题,效率和效果这两个天枰控制的越好,游戏的总体水平也就得到了保证,效率高了没有效果美术非常不喜欢看到的事情,明明可以靠连吃饭,技术却优化不好。接下来我们就详细介绍一款插件,重点推荐使用,对于大大小小的场景优化都很很大的帮助。

 

一、插件基本信息介绍

    插件名称:Mesh Baker 

    下载地址:链接:http://pan.baidu.com/s/1gfa3lXx 密码:gl5v

    插件工作原理:工具会寻找当前场景中使用相同材质球的物体分类,然后把同一个Shader的物体给统一合并成尽量少的贴图和材质球和Mesh来提高运行效率。(最大贴图尺寸可自行控制)

    主界面介绍:


 

 

  材质整合界面:


优化技巧;

1、MB会扫描出当前场景中使用了相同材质球的Mesh分类显示

2、此时就可以和美术沟通,用了一个Shader的材质球是否可以考虑合并到其他材质球里面,在保证美术效果一样的前提,不行的话就不用合并这个Mesh了。

3、此合并工具最好建议手动合并,因为U3D 虽然会把标记为静态物体的Mesh进行自动合并,但是本身合并的过程就是一个计算量很大的过程,经过我们测试,让U3D自己合并的效率要低于用MB合并成一个MESH 的效率。此类手动合并适用于场景中的杂物,比较多的物体,比如废墟、砖块、杂草、非常多的细小的Mesh但是有非常多的那种。

4、工具的一些问题,



如图所示,要了解MB的几个文件

    1、我们创建了一个*.assets文件,此文件是存储合并信息和材质球和mesh以及贴图的引用关系等数据。

    2、一个材质球,或者支持带序列号的多个材质球

    3、对应贴图,贴图存在了这个你创建的文件夹下面,没有自己合成的贴图当然就引用老的,自己合成的就用后来自己生成的大贴图,当然可以控制贴图尺寸如图最大 4096(最好控制在2048


    


    4、合并的MESH一定要存成一个Prefab,一定要存到Project目录下,千千万万不要存在场景中,这样会导致你的Unity地图文件很大很大,加载效率很低很低,具体怎么存看下图解释:



        现在场景中创建一个临时的Prefab,然后把这个Prefab拖拽到Project文件夹下面,之后在把创建好的预设放到 Combined MeshObject 中去,这样MB 合成的Mesh就会想传统的mesh文件一样存在于Project中了。最后把 Hierarchy面板中的 临时预设可以删除了。

    5、关于怎样去烘培场景,一般情况下,我们只需要把 Lightmapping UVS 勾选成Generate_new_UV2_layout就可以了,前提是 把这个勾选之后在创建出来的MESH 才能正常烘培光照贴图!一定要先生成后烘培。这样就和传统模型一样进行烘培场景了。



    6、关于模型UV越界的问题,有的美术制作的模型,有的必须使用连续贴图,所以在 UV有时候会越界。导致烘培的时候和合并的时候MB识别为不同类型的MESH,所以,美术提供的贴图尽量 保证 Out Of Bounds UVS =False ,也就是保证UV没有越出边界。

 

总结一下:

    反正这个工具的原理很简单,就是自动化的处理美术需要手动处理的活儿,提高工作效率,提升游戏帧率。合并MESH 合并贴图,序列化材质球,然后存储在*.assets文件。

    

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引