Unity - A计划(永久有效期) 扫二维码继续学习 二维码时效为半小时

(207评价)
优惠后 ¥1899.00优惠前 ¥2499.00 双十一全年最大力度限时优惠
1对1 答疑即时回复7天无理由退款30天价保提问必答

服务保障

1对1 答疑

提供专属的一对一在线答疑,快速答疑解惑。

即时回复

及时响应学习咨询,帮助解决问题。

7天无理由退款

购买后7天内可申请无理由退款。

30天价保

购买后30天内如遇降价,可申请价保。

提问必答

对于提问做到有问必答,帮您扫清学习过程中的种种障碍

[UGUI整体解决方案-案例篇(Unity 2019.1.0f2)] 实现CD基础效果时,当需显示占比为0时还有一块是亮的
Dunniwah发起了问答2020-03-03
1
回复
354
浏览

 

 

如上图,当showPercent调到0时还有一块是亮的,其余的到1都是正常的

//定义
private int segements = 100;
private float showPercent = 1.0f;

protected override void OnPopulateMesh(VertexHelper toFill)
{
  int realSegement = (int)(showPercent * segements); 
  //颜色处理部分
  UIVertex origin = new UIVertex();
  origin.color = new Color32(60, 60, 60, 225);

  int vertexCount = realSegement + 1;
  for (int i = 0; i < segements + 1; i++)
  {
     UIVertex vertexTemp = new UIVertex();
     if (i < vertexCount) 
     {
        vertexTemp.color = color;
     }
     else
     {
        vertexTemp.color = new Color32(60, 60, 60, 225);
     }
  }
  //画图部分
  int id = 1;
  for (int i = 0; i < segements; i++) 
  {
     toFill.AddTriangle(id, 0, id + 1);
     id++;
  }
}

找了一天了没找到原因,辛苦老师帮忙看看

所有回复
发表回复
你还没有登录,请先 登录或 注册!