Unity MeshBaker 合并网格和材质

MeshBaker
能够合并网格和材质,达到减少 Draw Calls 的目的。

官网地址:http://www.digitalopus.ca/site/mesh-baker/

Asset Store地址:https://www.assetstore.unity3d.com/en/#!/content/5017


在这里简单测试使用下,环境如下:

  • Unity 4.5.4
  • MeshBaker 3.3

1. 打开示例场景“Assets\MeshBaker\Examples\SceneBasic.unity”,删除对象“MeshBaker0”和“CombinedMesh-”,以便重新开始合并,如下图所示:

2. 点击菜单“GameObject -> Create Other -> Mesh Baker -> Mesh And Material Baker”,会自动在场景中添加一个名为“MeshBaker0”的对象,它包含两个脚本组件:MB3_TextureBaker MB3_MeshBaker,如下图所示:

3. 点击“Open Tools For Adding Objects”,会弹出“MB3_MeshBaker”窗口,点击“List
Shaders In Scene
”,将会在控制台列出场景中所使用到的着色器,并且指出哪些对象使用。这对于规划哪些对象进行合并非常有用,如下图所示:

拷贝到表格软件中,会更直接,如下表所示:

  OBJECT NAME LIGHTMAP INDEX STATIC OVERLAPPING SUBMESHES OUT-OF-BOUNDS UVs NUM MATS MATERIAL WARNINGS
Diffuse (UnityEngine.Shader) (72 verts):
  Cube1 (24 verts) -1 FALSE FALSE FALSE 1 [TestDiffuse1 (UnityEngine.Material)]  
  Cube3 (24 verts) -1 FALSE FALSE FALSE 1 [TestDiffuse3 (UnityEngine.Material)]  
  Cube4 (24 verts) -1 FALSE FALSE FALSE 1 [TestDiffuse4 (UnityEngine.Material)]  
Specular (UnityEngine.Shader) (24 verts):
  Cube2 (24 verts) -1 FALSE FALSE FALSE 1 [TestDiffuse2 (UnityEngine.Material)]  

合并的对象,首先考虑使用同一种材质,其次考虑使用同一种着色器。

4. 选中要合并的对象,在“MB3_MeshBaker”窗口里,设置需要过滤的类型,可以依据所使用的材质、着色器等进行过滤。接着,点击“Add
Selected Meshes
”,就会将符合要求的对象添加到 MB3_TextureBaker 和 MB3_MeshBaker 组件的合并数组里,如下图所示:

5. 点击“Create Empty Assets For Combined Material”,将会创建一个合并材质记录文件,这里取名为AllMat,如下图所示:

6. 设置好烘培选项,这些选项的意义可以参看帮助手册。然后,点击“Bake Materials into a Combined Material”,将会生成合并后的材质文件,如下图所示:

7. 设置网格烘培选项,默认烘培完成的网格是生成到场景对象的,可以更改Output值为bakeIntoPrefab,使之保存到预制。最后,点击“Bake”,将会生成一个包含合并后网格的新对象,如下图所示:

新生成的对象,如下图所示:


参考资料:

1. Mesh Baker的基本操作与功能演示 http://www.narkii.com/club/thread-301789-1.html

时间: 2024-11-02 16:30:24

Unity MeshBaker 合并网格和材质的相关文章

关于Unity中蒙皮网格和布料的使用

所以物体的要绘制出来就必须要有网格组件+材质属性,如果还需要其他特效或丰富内容的话,还可以再加组件. 蒙皮网格和布料 1: 例如要模拟衣服,随风摆动,模拟布料需要用到蒙皮网格和布料;2: 蒙皮网格可以模拟出非常柔软的网格体,用于布料和角色的蒙皮功能:3: 蒙皮网格 + 布料组件能模拟出布料效果:4: Skinned Mesh Renderer是一种网格渲染器,是一种渲染网格的方式;5: 布料是Cloth组件; 蒙皮网格的重要属性 Cast Shadows: 投影方式 包括: off, 单向(on

关于unity里pbr技术和材质 unity5默认shader和传统的对比

刚开始也不知道什么是pbr (Physically Based Rendering)后来才发现这是一种新的渲染方式 与之对应的是材质是pbs(Physically Based Shader) unity中的pbs有两种,一种是金属度的,一种是反射的, 具体前者可以做金属泥土之类,后者用于其他非金属的,但是这不绝对,前者也能做布料木头之类 最终使用还是要看艺术效果 (unity中金属度pbr材质) (unity中反射流程pbr材质) PBR做法 albedo map 无光颜色贴图normal ma

【Unity】Mesh网格编程(一)正二十面体

前言 Mesh类是Unity用脚本创建和修改3D模型的重要脚本类. 本文以自定义编译器菜单的方式,实现了Unity创建正二十面体的功能扩展. 博文首发:http://blog.csdn.net/duzixi 添加了各种Shader材质球+Halo的效果图: 关于Mesh编程相关内容网上有很多资料,这里就不再赘述了. 步骤一: 创建Editor文件夹(若有就不用),将以下源代码保存为MyEditor.cs文件,存入文件夹中. 源代码: <span style="font-size:14px;

【Unity】Mesh网格编程(四)麦比乌斯环

前言 事隔四个多月,第二篇网格编程原创,本次献给大家的是麦比乌斯环. 其实这个早就想做了,还是轻松下来的时候思绪转的快. 不废话,先看效果: 博文首发:http://blog.csdn.net/duzixi 工程资源准备: 1. 本脚本要放在Editor文件夹下 2. 在资源中有一个空对象,作为顶点预设体,创建时要引入 3. 在Resources文件夹下有一个材质,叫"M" 源代码: using UnityEngine; using UnityEditor; using System.

关于Unity中Mesh网格的详解

3D模型 通过3D建模软件所建出来的点和面,如以三角形为主的点和面,比如人的脑袋一个球,就是由各种各样的三角形组成的点和面. 点和面以及纹理坐标都是通过3D建模软件建模出来的. Unity会帮我们把模型的信息存到Mesh里面来,Mesh翻译成中文是网格. 顶点,三角形,纹理坐标,法线和切线. 3D建模软件 1:Autodesk 3D Studio Max 支持mac os windows;2: Autodesk 3D Maya 支持windows3: Cinema4D 支持mac os wind

【Unity】11.5 物理材质 (Physics Material)

分类:Unity.C#.VS2015 创建日期:2016-05-02 一.简介 物理材质 (Physics Material) 用于调整碰撞对象的摩擦力和反弹效果. 二.创建物理材质 要创建物理材质 (Physics Material),请从菜单栏选择[资源 (Assets)] -> [创建 (Create)] -> [物理材质 (Physics Material)].然后将物理材质 (Physics Material) 从[工程视图(Project View)]拖动到场景中的碰撞体(Coll

Unity光滑与粗糙的材质——相似于生锈的金属表面

纹理是在Photoshop中制作的,终于效果则是在Unity里得到的.这样的类型的材质.在3D游戏中非经常见.

Unity之导航网格寻路相关参数

1.Object(物体)参数面板 Navigation Static:选中该复选框,则表示该游戏对象将参与导航网格的烘焙. Generate OffMeshLinks:选中该复选框,可以自动根据Drop Height(下落高度)和Jump Distance(跳跃距离)的参数设置用关系线来连接分离的网格(模型). NavigationArea:导航区域设置.在默认情况下分为Walkable(行走区域).Not Walkable(不可行走层)和Jump(跳跃层). 2.Bake(烘焙)参数面板 Ag

Unity光滑与粗糙的材质——类似于生锈的金属表面

纹理是在Photoshop中制作的,最终效果则是在Unity里得到的.这种类型的材质,在3D游戏中很常见.