diff options
| author | chai <215380520@qq.com> | 2024-05-20 22:36:58 +0800 |
|---|---|---|
| committer | chai <215380520@qq.com> | 2024-05-20 22:36:58 +0800 |
| commit | a22c505984697881f5f911a165ee022087b69e09 (patch) | |
| tree | d3c030aef1ae9b8a01c889dd2902bb1e3324e72b /Thronefall_1_57/Thronefall/NGS.MeshFusionPro/CombineSource.cs | |
| parent | 4a4cc82d069b26bc4d4532e73860f86b211ca239 (diff) | |
Diffstat (limited to 'Thronefall_1_57/Thronefall/NGS.MeshFusionPro/CombineSource.cs')
| -rw-r--r-- | Thronefall_1_57/Thronefall/NGS.MeshFusionPro/CombineSource.cs | 92 |
1 files changed, 0 insertions, 92 deletions
diff --git a/Thronefall_1_57/Thronefall/NGS.MeshFusionPro/CombineSource.cs b/Thronefall_1_57/Thronefall/NGS.MeshFusionPro/CombineSource.cs deleted file mode 100644 index f010062..0000000 --- a/Thronefall_1_57/Thronefall/NGS.MeshFusionPro/CombineSource.cs +++ /dev/null @@ -1,92 +0,0 @@ -using System; -using UnityEngine; - -namespace NGS.MeshFusionPro; - -public class CombineSource : ICombineSource<CombinedObject, CombinedObjectPart>, ICombineSource -{ - public Vector3 Position { get; private set; } - - public Bounds Bounds { get; private set; } - - public MeshCombineInfo CombineInfo { get; private set; } - - public RendererSettings RendererSettings { get; private set; } - - public event Action<ICombinedObject, ICombinedObjectPart> onCombined; - - public event Action<ICombinedObject, string> onCombineError; - - public event Action<ICombinedObject> onCombineFailed; - - public event Action<CombinedObject, CombinedObjectPart> onCombinedTyped; - - public event Action<CombinedObject, string> onCombineErrorTyped; - - public event Action<CombinedObject> onCombineFailedTyped; - - public CombineSource(GameObject go, int submeshIndex = 0) - : this(go.GetComponent<MeshFilter>().mesh, go.GetComponent<MeshRenderer>(), submeshIndex) - { - } - - public CombineSource(Mesh mesh, MeshRenderer renderer, int submeshIndex = 0) - { - if (mesh == null) - { - throw new ArgumentException("Mesh is null"); - } - if (renderer == null) - { - throw new ArgumentException("Mesh Renderer is null"); - } - if (submeshIndex >= mesh.subMeshCount) - { - throw new ArgumentException("Submesh index is greater the submeshCount"); - } - MeshCombineInfo info = new MeshCombineInfo(mesh, renderer.localToWorldMatrix, renderer.lightmapScaleOffset, renderer.realtimeLightmapScaleOffset, submeshIndex); - RendererSettings settings = new RendererSettings(renderer, submeshIndex); - Construct(info, settings, renderer.bounds); - } - - public CombineSource(MeshCombineInfo info, RendererSettings settings) - : this(info, settings, info.mesh.bounds.Transform(info.transformMatrix)) - { - } - - public CombineSource(MeshCombineInfo info, RendererSettings settings, Bounds bounds) - { - Construct(info, settings, bounds); - } - - private void Construct(MeshCombineInfo info, RendererSettings settings, Bounds bounds) - { - CombineInfo = info; - RendererSettings = settings; - Position = info.transformMatrix.GetTranslation(); - Bounds = bounds; - } - - public void Combined(CombinedObject root, CombinedObjectPart part) - { - this.onCombined?.Invoke(root, part); - this.onCombinedTyped?.Invoke(root, part); - } - - public void CombineError(CombinedObject root, string errorMessage) - { - if (this.onCombineError == null && this.onCombinedTyped == null) - { - Debug.Log("Error during combine " + root.name + ", reason :" + errorMessage); - return; - } - this.onCombineError?.Invoke(root, errorMessage); - this.onCombineErrorTyped?.Invoke(root, errorMessage); - } - - public void CombineFailed(CombinedObject root) - { - this.onCombineFailed?.Invoke(root); - this.onCombineFailedTyped?.Invoke(root); - } -} |
