查看: 477|回复: 0
打印 上一主题 下一主题

[其他] 合并网格的代码

[复制链接]

9903

主题

126

听众

7万

积分

首席设计师

Rank: 8Rank: 8

纳金币
53488
精华
316

最佳新人 热心会员 灌水之王 活跃会员 突出贡献 荣誉管理 论坛元老

跳转到指定楼层
楼主
发表于 2015-9-30 19:52:48 |只看该作者 |倒序浏览

  1. using UnityEngine;
  2. using System.Collections;

  3. public class CombineMeshes : MonoBehaviour
  4. {
  5.      void Start()
  6.      {
  7.           MeshFilter[] meshFilters = GetComponentsInChildren<MeshFilter>();
  8.           CombineInstance[] combine = new CombineInstance[meshFilters.Length];
  9.           int i = 0;
  10.           while (i < meshFilters.Length)
  11.           {
  12.                combine.mesh = meshFilters.sharedMesh;
  13.                combine.transform = meshFilters.transform.localToWorldMatrix;
  14.                meshFilters.gameObject.SetActive(false);
  15.                i++;
  16.           }

  17.           transform.GetComponent<MeshFilter>().mesh = new Mesh();
  18.           transform.GetComponent<MeshFilter>().mesh.CombineMeshes(combine);
  19.           transform.gameObject.SetActive(true);
  20.      }
  21. }


  22. using UnityEngine;
  23. using System.Collections;
  24. using UnityEditor;

  25. public class EditorTools : MonoBehaviour
  26. {   
  27.      [MenuItem("Tools/Save Combine Mesh")]
  28.      public static void SaveMesh()
  29.      {
  30.           Mesh m = Selection.activeGameObject.GetComponent<MeshFilter>().sharedMesh;
  31.           AssetDatabase.CreateAsset(m, "Assets/tmp/cmbMesh.asset");
  32.           AssetDatabase.SaveAssets();
  33.      }
  34. }
复制代码
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2025-8-13 19:37 , Processed in 0.056518 second(s), 29 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部