一个协程的使用示例(走走停停效果)

xiaoxiao2021-02-28  91

IEnumerator GoAndWait() { while (true) { yield return new WaitForSeconds(3f); startTime = Time.time; endTime = startTime; //Debug.Log("" + endTime + " " + startTime); while (endTime - startTime < 2f) { transform.Translate(transform.forward * Time.deltaTime); yield return new WaitForEndOfFrame(); endTime = Time.realtimeSinceStartup; } } }

start中调用一下协程。

非协程实现需要在update中调用

void Update () { //Debug.Log("" + endTime + " " + startTime); curT += Time.deltaTime; if (curT < 1f) { transform.Translate(0, 0, 1 * Time.deltaTime); } else { delT += Time.deltaTime; if (delT > 3f) { curT = 0f; delT = 0f; } } }

转载请注明原文地址: https://www.6miu.com/read-72725.html

最新回复(0)