字体渐变脚本

字体颜色上下渐变的效果

/*--------------------------------------------------------------------

  • Author Name: DXL
  • Creation Time: 5/14/2019 10:02:25 AM
  • File Describe: 字体渐变
  • ------------------------------------------------------------------*/

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

[AddComponentMenu(“UI/Effects/Gradient”)]
public class Gradient : BaseMeshEffect
{
[SerializeField]
private Color32 topColor = Color.white;

[SerializeField]
private Color32 bottomColor = Color.black;

private List<UIVertex> mVertexList;
public override void ModifyMesh(VertexHelper vh)
{
    if (!IsActive())
    {
        return;
    }

    if (mVertexList == null)
    {
        mVertexList = new List<UIVertex>();
    }

    vh.GetUIVertexStream(mVertexList);
    ApplyGradient(mVertexList);

    vh.Clear();
    vh.AddUIVertexTriangleStream(mVertexList);
}

private void ApplyGradient(List<UIVertex> vertexList)
{
    for (int i = 0; i < vertexList.Count;)
    {
        ChangeColor(vertexList, i, topColor);
        ChangeColor(vertexList, i + 1, topColor);
        ChangeColor(vertexList, i + 2, bottomColor);
        ChangeColor(vertexList, i + 3, bottomColor);
        ChangeColor(vertexList, i + 4, bottomColor);
        ChangeColor(vertexList, i + 5, topColor);
        i += 6;
    }
}

private void ChangeColor(List<UIVertex> verList, int index, Color color)
{
    UIVertex temp = verList[index];
    temp.color = color;
    verList[index] = temp;
}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值