顺德网站建设哪家好,深圳工业设计展2021,做兼职用什么网站最好,定兴做网站把多个模型的网格合并为一个网格。可以使用自己写代码#xff0c;使用Unity自带的CombineMeshes方法#xff0c;也可以使用资源商店的插件#xff0c;在资源商店搜Mesh Combine可以搜索到相关的插件#xff0c;例如Easy Mesh Combine Tool等插件。 可大幅度减少Batches数量…把多个模型的网格合并为一个网格。可以使用自己写代码使用Unity自带的CombineMeshes方法也可以使用资源商店的插件在资源商店搜Mesh Combine可以搜索到相关的插件例如Easy Mesh Combine Tool等插件。 可大幅度减少Batches数量 减少模型的顶点、面、材质、骨骼、蒙皮网格。 写代码使用CombineMeshes方法实现网格合并: 1.测试脚本挂载在需要合并的物体身上 2.代码逻辑
using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class MeshCombineTest : MonoBehaviour
{// Start is called before the first frame updatevoid Start(){CombineTest();}public void CombineTest(){MeshFilter[] meshFilters GetComponentsInChildrenMeshFilter();CombineInstance[] combine new CombineInstance[meshFilters.Length];Material[] mats new Material[meshFilters.Length];Matrix4x4 matrix transform.worldToLocalMatrix;for (int i 0; i meshFilters.Length; i){MeshFilter mf meshFilters[i];MeshRenderer mr meshFilters[i].GetComponentMeshRenderer();if (mr null){continue;}combine[i].mesh mf.sharedMesh;combine[i].transform mf.transform.localToWorldMatrix * matrix;mr.enabled false;mats[i] mr.sharedMaterial;}//新建一个物体 用来接收合并后的数据GameObject go new GameObject(NewGameobject);go.AddComponentMeshFilter();go.AddComponentMeshRenderer();//赋值位置信息go.transform.localPosition transform.localPosition;go.transform.localRotation transform.localRotation;//赋值合并后的网格MeshFilter thisMeshFilter go.GetComponentMeshFilter();Mesh mesh new Mesh();mesh.name Combined;thisMeshFilter.mesh mesh;mesh.CombineMeshes(combine, false);//赋值合并后的材质信息MeshRenderer thisMeshRenderer go.GetComponentMeshRenderer();thisMeshRenderer.sharedMaterials mats;thisMeshRenderer.enabled true;MeshCollider thisMeshCollider GetComponentMeshCollider();if (thisMeshCollider ! null){thisMeshCollider.sharedMesh mesh;}//合并后隐藏自己gameObject.SetActive(false);}
}
3.最终结果展示 合并后物体属性的展示
使用Easy Mesh Combine Tool插件实现网格合并: 1.打开unity资源商店 搜索Mesh Combine 添加插件到我的资源 2.打开Package Manager 找到这个插件点击右下角Download 3.下载完毕点击导入
4.把需要合并的物体放在一个空节点下 5.打开插件 Window–Easy Mesh Combine Tool 选中需要合并的物体点击插件面板的Make Group and Combine进行网格合并 6.合并完成预览