纳金网
标题:
Unity文字渐变Gradient 5.4更改
[打印本页]
作者:
taddycs
时间:
2016-9-3 21:08
标题:
Unity文字渐变Gradient 5.4更改
从5.22开始就遇到这个问题,
现在又遇到了,研究修改了1个多小时终于解决不报错了,分享给大家
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using UnityEngine.UI;
using System;
[AddComponentMenu("UI/Effects/Gradient")]
public class Gradient : BaseMeshEffect
{
[SerializeField]
private Color32 topColor = Color.white;
[SerializeField]
private Color32 bottomColor = Color.black;
public override void ModifyMesh(VertexHelper vh)
{
if (!this.IsActive())
return;
List<UIVertex> vertexList = new List<UIVertex>();
vh.GetUIVertexStream(vertexList);
ModifyVertices(vertexList);
vh.Clear();
vh.AddUIVertexTriangleStream(vertexList);
}
public void ModifyVertices(List<UIVertex> vertexList)
{
if (!IsActive())
{
return;
}
int count = vertexList.Count;
if (count > 0)
{
float bottomY = vertexList[0].position.y;
float topY = vertexList[0].position.y;
for (int i = 1; i < count; i++)
{
float y = vertexList[i].position.y;
if (y > topY)
{
topY = y;
}
else if (y < bottomY)
{
bottomY = y;
}
}
float uiElementHeight = topY - bottomY;
for (int i = 0; i < count; i++)
{
UIVertex uiVertex = vertexList[i];
uiVertex.color = Color32.Lerp(bottomColor, topColor, (uiVertex.position.y - bottomY) / uiElementHeight);
vertexList[i] = uiVertex;
}
}
}
}
作者:
yangliangliang
时间:
2016-9-4 20:25
虽然看不懂但是 感觉很吊的样子
作者:
daiao1
时间:
2016-12-29 17:10
给力 我下的一个旧插件正好报这个错。=w=
欢迎光临 纳金网 (http://go.narkii.com/club/)
Powered by Discuz! X2.5