From 1ab047b5fdd933c38ba0519ec2e83a44512ea8d7 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期四, 26 三月 2026 17:46:11 +0800
Subject: [PATCH] webgl代码合并 1

---
 Main/Component/UI/Effect/EllipseMask.cs |   20 +++++++++++++++++++-
 1 files changed, 19 insertions(+), 1 deletions(-)

diff --git a/Main/Component/UI/Effect/EllipseMask.cs b/Main/Component/UI/Effect/EllipseMask.cs
index 5c88335..8361294 100644
--- a/Main/Component/UI/Effect/EllipseMask.cs
+++ b/Main/Component/UI/Effect/EllipseMask.cs
@@ -155,6 +155,7 @@
     /// </summary>
     private void CreateMaskMaterial()
     {
+        #if !UNITY_EDITOR
         if (m_MaskMaterial == null)
         {
             ResManager.Instance.LoadAssetAsync<Shader>("Shader", "GUI_EllipseMask").ContinueWith(ellipseShader =>
@@ -169,6 +170,12 @@
                 }
             }).Forget();
         }
+        #else
+        if (m_MaskMaterial == null)
+        {
+            m_MaskMaterial = new Material(Shader.Find("GUI/EllipseMask"));
+        }
+        #endif
     }
 
     /// <summary>
@@ -242,6 +249,8 @@
     {
         if (graphic.material == null || !graphic.material.shader.name.Contains("EllipseMaskedContent"))
         {
+
+#if !UNITY_EDITOR            
             // Shader maskedShader = Shader.Find("GUI/EllipseMaskedContent");
             ResManager.Instance.LoadAssetAsync<Shader>("Shader", "GUI_EllipseMaskedContent").ContinueWith(maskedShader =>
             {
@@ -253,7 +262,16 @@
                     graphic.material = maskedMaterial;
                 }
             }).Forget();
-
+#else
+            Shader maskedShader = Shader.Find("GUI/EllipseMaskedContent");
+            if (maskedShader != null)
+            {
+                Material maskedMaterial = new Material(maskedShader);
+                maskedMaterial.SetInt("_Stencil", m_StencilID);
+                maskedMaterial.SetInt("_StencilComp", 3); // Equal
+                graphic.material = maskedMaterial;
+            }
+#endif
         }
         else
         {

--
Gitblit v1.8.0