UnityEngine.UI.VertexHelper.PopulateUIVertex C# (CSharp) Method

PopulateUIVertex() public method

public PopulateUIVertex ( UIVertex &vertex, int i ) : void
vertex UnityEngine.UIVertex
i int
return void
        public void PopulateUIVertex(ref UIVertex vertex, int i)
        {
            vertex.position = this.m_Positions[i];
            vertex.color = this.m_Colors[i];
            vertex.uv0 = this.m_Uv0S[i];
            vertex.uv1 = this.m_Uv1S[i];
            vertex.normal = this.m_Normals[i];
            vertex.tangent = this.m_Tangents[i];
        }

Usage Example

コード例 #1
1
ファイル: Gradient.cs プロジェクト: l980305284/UGUIPlugin
    public override void ModifyMesh(VertexHelper helper)
    {
        if (!IsActive() || helper.currentVertCount == 0)
             return;

         List<UIVertex> vertices = new List<UIVertex>();
         helper.GetUIVertexStream(vertices);

         float bottomY = vertices[0].position.y;
         float topY = vertices[0].position.y;

         for (int i = 1; i < vertices.Count; i++)
         {
             float y = vertices[i].position.y;
             if (y > topY)
             {
                 topY = y;
             }
             else if (y < bottomY)
             {
                 bottomY = y;
             }
         }

         float uiElementHeight = topY - bottomY;

         UIVertex v = new UIVertex();

         for (int i = 0; i < helper.currentVertCount; i++)
         {
             helper.PopulateUIVertex(ref v, i);
             v.color = Color32.Lerp(bottomColor, topColor, (v.position.y - bottomY) / uiElementHeight);
             helper.SetUIVertex(v, i);
         }
    }
All Usage Examples Of UnityEngine.UI.VertexHelper::PopulateUIVertex