使用UGUI绘制多边形(这里以五边形为例子), 首先我们先看一下UGUI里的绘制一张图片需要实现的一个函数。
protected override void OnPopulateMesh(VertexHelper toFill)
{
if ((UnityEngine.Object) this.activeSprite == (UnityEngine.Object) null)
{
base.OnPopulateMesh(toFill);
}
else
{
switch (this.type)
{
case Image.Type.Simple:
this.GenerateSimpleSprite(toFill, this.m_PreserveAspect);
break;
case Image.Type.Sliced:
this.GenerateSlicedSprite(toFill);
break;
case Image.Type.Tiled:
this.GenerateTiledSprite(toFill);
break;
case Image.Type.Filled:
this.GenerateFilledSprite(toFill, this.m_PreserveAspect);
break;
}
}
}
这个函数是由Image所继承的MaskGraphic所继承的Graphic所提供的一个虚函数。(有点绕!!@_@)
<