Объединение сеток - объекты исчезают - PullRequest
0 голосов
/ 31 октября 2019

Я пытаюсь комбинировать сетки, но получаю ошибки, и мои объекты исчезают. Я прочитал много других вопросов, которые похожи, но их решения не работают. Как я могу это исправить?

Изображение ошибок

using UnityEngine;
using System.Collections;

// Copy meshes from children into the parent's Mesh.
// CombineInstance stores the list of meshes.  These are combined
// and assigned to the attached Mesh.

[RequireComponent(typeof(MeshFilter))]
[RequireComponent(typeof(MeshRenderer))]
public class MeshCombiner : MonoBehaviour
{
    void Start()
    {
        MeshFilter[] meshFilters = GetComponentsInChildren<MeshFilter>();
        CombineInstance[] combine = new CombineInstance[meshFilters.Length];

        int i = 0;
        while (i < meshFilters.Length)
        {
            if (meshFilters[i].sharedMesh!=null) // custom
            {
                combine[i].mesh = meshFilters[i].sharedMesh;
                combine[i].transform = meshFilters[i].transform.localToWorldMatrix;
                meshFilters[i].gameObject.SetActive(false);
            }
            i++;
        }
        transform.GetComponent<MeshFilter>().mesh = new Mesh();
        //transform.GetComponent<MeshFilter>().mesh.CombineMeshes(combine);        
        transform.GetComponent<MeshFilter>().mesh.CombineMeshes(combine, true); // custom
        transform.gameObject.SetActive(true);

        //transform.GetComponent<MeshFilter>().mesh.RecalculateBounds(); // custom
        //transform.rotation = Quaternion.identity; // custom
        //transform.position = new Vector3(0.0f, 0.0f, 0.0f); // custom

    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...