46 lines
1.4 KiB
C#
46 lines
1.4 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
|
|
namespace UnityEngine.UI
|
|
{
|
|
// Token: 0x020000AD RID: 173
|
|
[AddComponentMenu("UI/Effects/Outline", 15)]
|
|
public class Outline : Shadow
|
|
{
|
|
// Token: 0x06000622 RID: 1570 RVA: 0x0001E967 File Offset: 0x0001CD67
|
|
protected Outline()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06000623 RID: 1571 RVA: 0x0001E970 File Offset: 0x0001CD70
|
|
public override void ModifyMesh(VertexHelper vh)
|
|
{
|
|
if (this.IsActive())
|
|
{
|
|
List<UIVertex> list = ListPool<UIVertex>.Get();
|
|
vh.GetUIVertexStream(list);
|
|
int num = list.Count * 5;
|
|
if (list.Capacity < num)
|
|
{
|
|
list.Capacity = num;
|
|
}
|
|
int num2 = 0;
|
|
int num3 = list.Count;
|
|
base.ApplyShadowZeroAlloc(list, base.effectColor, num2, list.Count, base.effectDistance.x, base.effectDistance.y);
|
|
num2 = num3;
|
|
num3 = list.Count;
|
|
base.ApplyShadowZeroAlloc(list, base.effectColor, num2, list.Count, base.effectDistance.x, -base.effectDistance.y);
|
|
num2 = num3;
|
|
num3 = list.Count;
|
|
base.ApplyShadowZeroAlloc(list, base.effectColor, num2, list.Count, -base.effectDistance.x, base.effectDistance.y);
|
|
num2 = num3;
|
|
num3 = list.Count;
|
|
base.ApplyShadowZeroAlloc(list, base.effectColor, num2, list.Count, -base.effectDistance.x, -base.effectDistance.y);
|
|
vh.Clear();
|
|
vh.AddUIVertexTriangleStream(list);
|
|
ListPool<UIVertex>.Release(list);
|
|
}
|
|
}
|
|
}
|
|
}
|