Unity 协同程序coroutine简单使用
Posted kingr
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity 协同程序coroutine简单使用相关的知识,希望对你有一定的参考价值。
简介
协同程序 coroutine 简称协程,
Unity的Update函数每帧调用一次,若想实现跨帧执行程序,这时需要使用协程
使用
声明返回值类型为IEnumerator的方法
1 IEnumerator MyFunction() 2 { 3 //Code1 4 yeild return null; 5 //Code2 6 }
协程的执行可在任何时候用yield return null语句暂停。当时用yield语句时,协程暂时停止执行,并在下一帧于原位恢复。
yeild return后可接 new WaitForSeconds(n) 表示协程在n秒后恢复(n为浮点数).
协程的开始和结束
StartCoroutine(参数); //开始
StopCoroutine(参数);//结束
参数: 返回值为IEnumerator的方法,或者是方法名称的字符串。
其他结束方法:禁用GameObject对象会中断协程(但是禁用脚本组件不会中断).
用途
Buff,持续跳动伤害,触发延迟效果,一些视觉效果的延迟消失(激光,物体淡出);
可在方法体中通过循环来实现一些不必每帧都调用的周期性作业(通过WaitForSeconds(n)实现),减轻每帧的运算量。
以上是关于Unity 协同程序coroutine简单使用的主要内容,如果未能解决你的问题,请参考以下文章