summaryrefslogtreecommitdiff
path: root/Thronefall_1_57/Decompile/NGS.MeshFusionPro/CombinedMesh.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Thronefall_1_57/Decompile/NGS.MeshFusionPro/CombinedMesh.cs')
-rw-r--r--Thronefall_1_57/Decompile/NGS.MeshFusionPro/CombinedMesh.cs86
1 files changed, 0 insertions, 86 deletions
diff --git a/Thronefall_1_57/Decompile/NGS.MeshFusionPro/CombinedMesh.cs b/Thronefall_1_57/Decompile/NGS.MeshFusionPro/CombinedMesh.cs
deleted file mode 100644
index fd9933b..0000000
--- a/Thronefall_1_57/Decompile/NGS.MeshFusionPro/CombinedMesh.cs
+++ /dev/null
@@ -1,86 +0,0 @@
-using System;
-using System.Collections.Generic;
-using UnityEngine;
-
-namespace NGS.MeshFusionPro;
-
-public class CombinedMesh : IDisposable
-{
- private Mesh _mesh;
-
- private CombinedMeshDataInternal _meshData;
-
- private IMeshCombiner _combiner;
-
- private IMeshCutter _cutter;
-
- public Mesh Mesh => _mesh;
-
- public CombinedMeshData MeshData => _meshData;
-
- public CombinedMesh(IMeshCombiner combiner, IMeshCutter cutter)
- {
- if (combiner == null)
- {
- throw new ArgumentNullException("MeshCombiner not assigned");
- }
- if (cutter == null)
- {
- throw new ArgumentNullException("MeshCutter not assigned");
- }
- _mesh = new Mesh();
- _mesh.MarkDynamic();
- _combiner = combiner;
- _cutter = cutter;
- _meshData = CreateMeshData();
- _meshData.Initialize(this);
- }
-
- public CombinedMeshPart[] Combine(IList<MeshCombineInfo> infos)
- {
- _combiner.Combine(_mesh, infos);
- return _meshData.CreateParts(infos);
- }
-
- public void Cut(IList<CombinedMeshPart> parts)
- {
- MeshCuttingInfo[] array = new MeshCuttingInfo[parts.Count];
- for (int i = 0; i < parts.Count; i++)
- {
- CombinedMeshPart combinedMeshPart = parts[i];
- array[i] = new MeshCuttingInfo
- {
- vertexStart = combinedMeshPart.VertexStart,
- vertexCount = combinedMeshPart.VertexCount,
- triangleStart = combinedMeshPart.TrianglesStart,
- triangleCount = combinedMeshPart.TrianglesCount
- };
- }
- _cutter.Cut(_mesh, array);
- _meshData.RemoveParts(parts);
- }
-
- public void Dispose()
- {
- _meshData.Dispose();
- }
-
- protected virtual CombinedMeshDataInternal CreateMeshData()
- {
- return new CombinedMeshDataInternal();
- }
-}
-public class CombinedMesh<TCombinedMeshData> : CombinedMesh where TCombinedMeshData : CombinedMeshDataInternal, new()
-{
- public TCombinedMeshData MeshDataInternal => (TCombinedMeshData)base.MeshData;
-
- public CombinedMesh(IMeshCombiner combiner, IMeshCutter cutter)
- : base(combiner, cutter)
- {
- }
-
- protected override CombinedMeshDataInternal CreateMeshData()
- {
- return new TCombinedMeshData();
- }
-}