脚本如下:
<span style="color: #0000ff">public <span style="color: #0000ff">class<span style="color: #000000"> CircleExpandImage : MonoBehaviour {
<span style="color: #0000ff">public <span style="color: #0000ff">float timeSeconds =<span style="color: #000000"> 5f;
<span style="color: #0000ff">public <span style="color: #0000ff">float timeInterval = <span style="color: #800080">0.05f<span style="color: #000000">;
<span style="color: #0000ff">public <span style="color: #0000ff">float timeSeconds =<span style="color: #000000"> 5f;
<span style="color: #0000ff">public <span style="color: #0000ff">float timeInterval = <span style="color: #800080">0.05f<span style="color: #000000">;
</span><span style="color: #0000ff">private</span><span style="color: #000000"> Image image;
</span><span style="color: #0000ff">private</span> <span style="color: #0000ff">float</span><span style="color: #000000"> duration;
</span><span style="color: #0000ff">void</span><span style="color: #000000"> Start()
{
gameObject.SetActive(</span><span style="color: #0000ff">false</span><span style="color: #000000">);
image </span>= GetComponent<Image><span style="color: #000000">();
image.type </span>=<span style="color: #000000"> Image.Type.Filled;
image.fillAmount </span>=<span style="color: #000000"> 0f;
image.fillOrigin </span>= (<span style="color: #0000ff">int</span><span style="color: #000000">)Image.Origin90.TopRight;
duration </span>= <span style="color: #800080">0</span><span style="color: #000000">;
}
</span><span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span><span style="color: #000000"> begin()
{
gameObject.SetActive(</span><span style="color: #0000ff">true</span><span style="color: #000000">);
StartCoroutine(DrawCircleImage());
}
IEnumerator DrawCircleImage()
{
Debug.Log(System.DateTime.Now);
</span><span style="color: #0000ff">yield</span> <span style="color: #0000ff">return</span> <span style="color: #0000ff">new</span><span style="color: #000000"> WaitForSeconds(timeInterval);
</span><span style="color: #0000ff">while</span> (duration <<span style="color: #000000"> 1f)
{
duration </span>+= 1f / ((timeSeconds - <span style="color: #800080">0.1f</span>) / timeInterval) * <span style="color: #800080">2</span><span style="color: #000000">;
image.fillAmount </span>=<span style="color: #000000"> duration;
</span><span style="color: #0000ff">yield</span> <span style="color: #0000ff">return</span> <span style="color: #0000ff">new</span><span style="color: #000000"> WaitForSeconds(timeInterval);
}
Debug.Log(System.DateTime.Now);
}
}
挂到image上,调用begin方法即可。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。