From 8e13e7e2874adc8982e16d1d2ed2e28d7480b45f Mon Sep 17 00:00:00 2001 From: chai <215380520@qq.com> Date: Sun, 19 May 2024 16:05:58 +0800 Subject: +1.57 --- .../NGS.MeshFusionPro/CombinedLODGroupPart.cs | 49 ++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 Thronefall_1_57/Decompile/NGS.MeshFusionPro/CombinedLODGroupPart.cs (limited to 'Thronefall_1_57/Decompile/NGS.MeshFusionPro/CombinedLODGroupPart.cs') diff --git a/Thronefall_1_57/Decompile/NGS.MeshFusionPro/CombinedLODGroupPart.cs b/Thronefall_1_57/Decompile/NGS.MeshFusionPro/CombinedLODGroupPart.cs new file mode 100644 index 0000000..95c9c00 --- /dev/null +++ b/Thronefall_1_57/Decompile/NGS.MeshFusionPro/CombinedLODGroupPart.cs @@ -0,0 +1,49 @@ +using System.Collections.Generic; +using UnityEngine; + +namespace NGS.MeshFusionPro; + +public class CombinedLODGroupPart : ICombinedObjectPart, ICombinedObjectPart +{ + private List _baseParts; + + private Bounds _localBounds; + + ICombinedObject ICombinedObjectPart.Root => Root; + + public CombinedLODGroup Root { get; private set; } + + public Bounds LocalBounds => _localBounds; + + public Bounds Bounds + { + get + { + Bounds localBounds = _localBounds; + localBounds.center += Root.transform.position; + return localBounds; + } + } + + public CombinedLODGroupPart(CombinedLODGroup root, List baseParts) + { + Root = root; + _baseParts = baseParts; + CalculateLocalBounds(); + } + + public void Destroy() + { + Root.Destroy(this, _baseParts); + } + + private void CalculateLocalBounds() + { + _localBounds = _baseParts[0].Bounds; + for (int i = 1; i < _baseParts.Count; i++) + { + _localBounds.Encapsulate(_baseParts[i].Bounds); + } + _localBounds.center -= Root.transform.position; + } +} -- cgit v1.1-26-g67d0