unity 用协程几秒内改变某个值
  wbOAKWo9yuyk 2023年11月02日 40 0
public float m_TotalTime = 5f;

    private float m_changeSpeed = 0;
    private Image m_bgImg;

    private void Start()
    {
        m_bgImg = GetComponent<Image>();
        m_changeSpeed = 1 / m_TotalTime;
        StartCoroutine(ShowCountingDown());
    }

    float timer = 0f;
    IEnumerator ShowCountingDown()
    {
        while (m_bgImg.fillAmount > 0)
        {
            m_bgImg.fillAmount -= m_changeSpeed * Time.deltaTime;
            yield return new WaitForSeconds(Time.deltaTime);
        }
        StopCoroutine(ShowCountingDown());
    }

此处是5秒内将img的fillAmount变为0,不同需求自行修改

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

wbOAKWo9yuyk
作者其他文章 更多