首页 > 其他分享 >合并网格

合并网格

时间:2023-02-02 11:36:58浏览次数:30  
标签:objects 合并 网格 mesh 实例 赋值

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class HB : MonoBehaviour
{

public GameObject[] objects;
// Start is called before the first frame update
void Start()
{
//创建合并实例的集合
List<CombineInstance> combines = new List<CombineInstance>();

//创建材质球集合
List<Material> materials = new List<Material>();
for (int i = 0; i < objects.Length; i++)
{
//创建合并实例
CombineInstance combine = new CombineInstance();
//获取网格并赋值给合并实例
combine.mesh = objects[i].GetComponent<MeshFilter>().mesh;//获得物体的网格
//获取矩阵并赋值给合并实例(transform是4*4矩阵类型)
combine.transform = objects[i].transform.localToWorldMatrix;//给矩阵赋值
//把合并实例存入集合
combines.Add(combine);
//获取材质球并存入材质球集合
materials.Add(objects[i].GetComponent<MeshRenderer>().material);

}

//创建网格
Mesh mesh = new Mesh();
//合并网格 (合并实例的数组,是否合并子网格,是否使用矩阵) //使用矩阵为false就不会和你摆的一样了
mesh.CombineMeshes(combines.ToArray(),false,false);//合并网格,后面加false图片就不会给子网格绘制
//合并后的网格赋值给网格过滤器
gameObject.AddComponent<MeshFilter>().mesh = mesh;
//把材质球集合赋值给材质球数组
gameObject.AddComponent<MeshRenderer>().materials = materials.ToArray();
}

// Update is called once per frame
 
}

 

标签:objects,合并,网格,mesh,实例,赋值
From: https://www.cnblogs.com/qinhuanghan5/p/17085461.html

相关文章

  • pdf怎么合并在一起?pdf合并方法分享!​
    pdf怎么合并在一起?很多小伙伴在日常的工作中,都会需要别的同事或者别的公司帮助我们一起完成一个项目,那么在完成项目的时候,很多小伙伴也是同时接到了多个pfd文件,不知道该如何......
  • 通过网格绘制圆
    usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;usingUnityEngine.UI;publicclassCreat_Yuan:MonoBehaviour{MeshFiltermeshFi......
  • 【YBT2023寒假Day4 A】网格染色(DP)(矩阵乘法)(DFT)
    网格染色题目链接:YBT2023寒假Day4A题目大意有一个n*3的网格,你可以选恰好m个格子染成黑色。然后对于一个黑点,我们对它周围的\(8\)个点中的一些有限制不能是黑点,......
  • 多区间合并
    给出多个区间,每给出一个区间就查询:使\([1,x]\)都被覆盖到的最大的\(x\)为多少可以用set<pair<int,int>>存入区间(set默认按照pair的first升序排序),每次insert一个区间后......
  • 【算法训练营day36】LeetCode435. 无重叠区间 LeetCode763. 划分字母区间 LeetCode56.
    LeetCode435.无重叠区间题目链接:435.无重叠区间独上高楼,望尽天涯路好像有点开窍了!我的思路是,升序排序(左对齐),然后按顺序遍历,遇到重叠时,拿走尾巴更长的区间,从而保证局部......
  • LeetCode合并两个有序链表(/dfs)
    题目将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。约束解法方法一classSolution{public:ListNode......
  • 两张相同的表合并
    参考:mysql把多张表合并成一张新表-sauron2021-博客园(cnblogs.com)......
  • JavaFX 网格布局 GridPane
    packagefx.com;importjavafx.application.Application;importjavafx.scene.Scene;importjavafx.scene.control.Button;importjavafx.scene.image.Image;importjavafx.......
  • MySQL 合并查询union 查询出的行合并到一个表中
    在合并查询中,尤其是二分类的情况,在查询结果是相同列名的时候可以考虑合并查询。先查询出行的结果,再使用union或者unionall合并查询结果。另外如果union和orderby一......
  • 合并两个有序链表
    /***Definitionforsingly-linkedlist.*functionListNode(val,next){*this.val=(val===undefined?0:val)*this.next=(next===undefined......