从左到右淡入淡出效果

时间:2019-03-11 16:57:38

标签: c# unity3d fadein fadeout

我正在使用Unity3D在增强现实中开发一个应用程序,我想为增强功能添加一些效果。 特别是淡入淡出的效果,而不是整个对象(在我的情况下为具有纹理的Quad)上,我正在寻找一种从左到右执行此操作的方法,例如“渐变效果”。 通用示例说明了如何随时间更改Alpha通道,有一种方法可以按时更改,但从左到右?

有一个淡入淡出效果的例子,仅作用于Alpha通道

IEnumerator FadeImage(bool fadeAway)
{
    // fade from opaque to transparent
    if (fadeAway)
    {
        // loop over 1 second backwards
        for (float i = 1; i >= 0; i -= Time.deltaTime)
        {
            // set color with i as alpha
            img.color = new Color(1, 1, 1, i);
            yield return null;
        }
    }
    // fade from transparent to opaque
    else
    {
        // loop over 1 second
        for (float i = 0; i <= 1; i += Time.deltaTime)
        {
            // set color with i as alpha
            img.color = new Color(1, 1, 1, i);
            yield return null;
        }
    }
}

0 个答案:

没有答案