From 61f02de9ccc48024d95d3ac7b0517d2b356e0877 Mon Sep 17 00:00:00 2001 From: hugoymh <34024260+hugoymh@users.noreply.github.com> Date: Mon, 27 Jul 2026 16:00:56 +0800 Subject: [PATCH] Update Gradient2.cs added _baseVertexColor field to fetch original vertex color from base Graphic --- Runtime/Scripts/Effects/Gradient2.cs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Runtime/Scripts/Effects/Gradient2.cs b/Runtime/Scripts/Effects/Gradient2.cs index 3d2f256..da5b6b3 100644 --- a/Runtime/Scripts/Effects/Gradient2.cs +++ b/Runtime/Scripts/Effects/Gradient2.cs @@ -26,6 +26,7 @@ public class Gradient2 : BaseMeshEffect [SerializeField] [Tooltip("Add vertices to display complex gradients. Turn off if your shape is already very complex, like text.")] bool _modifyVertices = true; + Color _baseVertexColor; [SerializeField] [Range(-1, 1)] @@ -111,6 +112,7 @@ public override void ModifyMesh(VertexHelper helper) List _vertexList = ListPool.Get(); helper.GetUIVertexStream(_vertexList); + _baseVertexColor = _vertexList[0].color; int nCount = _vertexList.Count; switch (GradientType) @@ -510,7 +512,7 @@ UIVertex CreateSplitVertex(UIVertex vertex1, UIVertex vertex2, float stop) splitVertex.position = new Vector3(stop, splitY, vertex1.position.z); splitVertex.normal = vertex1.normal; splitVertex.uv0 = new Vector2(vertex1.uv0.x - (uvx * ratio), vertex1.uv0.y - (uvy * ratio)); - splitVertex.color = Color.white; + splitVertex.color = _baseVertexColor; return splitVertex; } else @@ -527,7 +529,7 @@ UIVertex CreateSplitVertex(UIVertex vertex1, UIVertex vertex2, float stop) splitVertex.position = new Vector3(splitX, stop, vertex1.position.z); splitVertex.normal = vertex1.normal; splitVertex.uv0 = new Vector2(vertex1.uv0.x - (uvx * ratio), vertex1.uv0.y - (uvy * ratio)); - splitVertex.color = Color.white; + splitVertex.color = _baseVertexColor; return splitVertex; } }