在Unity的学习中,协程(Coroutines)是一个很好用也经常会用到的方法。这里给大家分享一下我自己在学习过程中的所得。
首先我们看一下Unity官方手册的对协程的介绍:
官方手册在这里举了一个例子:(原文)当你调用一个方法(函数)的时候,方法在返回之前就全部执行完成了,这就意味着任何函数内的方法,在一帧之内就执行完成了。所以这些函数没有办法完成一些,包含动画和一些时间事件的函数。例如减少一个物体的alpha值,直到透明。
效果如下:
public class Coroutines_Blog : MonoBehaviour
{
private Image test_Img;
private void Start()
{
test_Img = transform.Find("test_Img").GetComponent<Image>();
Fade();
}
void Fade()
{
for (float f = 1f; f >= 0; f -= 0.1f)
{
Color c = test_Img.color;
c.a = f;
test_Img.color = c;
}
}
}