Эх сурвалжийг харах

【+】添加材质球找回功能

lxd 1 сар өмнө
parent
commit
ad13ec8180

+ 35 - 0
Framework/Toolkits/RetrieveMaterialTool.cs

@@ -0,0 +1,35 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using Sirenix.OdinInspector;
+using System.Linq;
+
+public class RetrieveMaterialTool : MonoBehaviour
+{
+    public Transform orginTran;
+
+    public Transform tragetTran;
+
+    /// <summary>
+    /// 找回材质球
+    /// </summary>
+    public void RetrieveMaterail()
+    {
+        MeshRenderer[] orginMeshRenderers = orginTran.GetComponentsInChildren<MeshRenderer>(true);
+
+        foreach (var item in tragetTran.GetComponentsInChildren<MeshRenderer>(true))
+        {
+           MeshRenderer tmpOrginMeshRender = orginMeshRenderers.ToList().Find(t => t.GetComponent<MeshFilter>().sharedMesh == item.GetComponent<MeshFilter>().sharedMesh && t.sharedMaterial != item.sharedMaterial);
+
+            if (tmpOrginMeshRender != null)
+            {
+                item.sharedMaterial = tmpOrginMeshRender.sharedMaterial;
+                Debug.Log(item.name + "已切换材质球");
+            }
+        }
+
+    }
+
+    
+
+}

+ 11 - 0
Framework/Toolkits/RetrieveMaterialTool.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 4cf0373cb6879624b9eff26a568c06bf
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: