zoukankan      html  css  js  c++  java
  • 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)实现),减轻每帧的运算量。

  • 相关阅读:
    画了朵花
    定位
    浮动
    盒模型
    html+css笔记1
    闭包
    高阶函数
    函数
    Map Set iterable
    git stash clear/drop 后代码如何恢复
  • 原文地址:https://www.cnblogs.com/KingR/p/12927070.html
Copyright © 2011-2022 走看看