mirror of
https://github.com/vrm-c/UniVRM.git
synced 2026-05-23 19:36:18 -05:00
41 lines
1.2 KiB
C#
41 lines
1.2 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
namespace UniGLTF.MeshUtility
|
|
{
|
|
[System.Serializable]
|
|
public class MeshMap
|
|
{
|
|
public List<Mesh> Sources = new List<Mesh>();
|
|
public Mesh Integrated;
|
|
public Material[] SharedMaterials;
|
|
public Transform[] Bones;
|
|
}
|
|
|
|
public class MeshIntegrationResult
|
|
{
|
|
public List<SkinnedMeshRenderer> SourceSkinnedMeshRenderers = new List<SkinnedMeshRenderer>();
|
|
public List<MeshRenderer> SourceMeshRenderers = new List<MeshRenderer>();
|
|
public MeshMap MeshMap = new MeshMap();
|
|
public SkinnedMeshRenderer IntegratedRenderer;
|
|
|
|
public void AddIntegratedRendererTo(GameObject parent)
|
|
{
|
|
var go = new GameObject(MeshMap.Integrated.name);
|
|
go.transform.SetParent(parent.transform, false);
|
|
var smr = go.AddComponent<SkinnedMeshRenderer>();
|
|
smr.sharedMesh = MeshMap.Integrated;
|
|
smr.sharedMaterials = MeshMap.SharedMaterials;
|
|
smr.bones = MeshMap.Bones;
|
|
|
|
IntegratedRenderer = smr;
|
|
}
|
|
|
|
public void DestroySourceRenderer()
|
|
{
|
|
throw new NotImplementedException();
|
|
}
|
|
}
|
|
}
|