Unity之Invoke、InvokeRepeating、StartCoroutine学习一

本文介绍了Unity中的三个关键函数:Invoke、InvokeRepeating和StartCoroutine。通过示例代码展示了它们在游戏对象生命周期中的不同行为,如在对象激活、隐藏、场景加载情况下的执行情况。在代码中,Invoke用于一次性的延迟调用,InvokeRepeating则周期性地重复调用,而StartCoroutine用于执行协程操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

using UnityEngine;
using System.Collections;

public class MershDemo : MonoBehaviour {

	// Use this for initialization
	void Start () {

        //DontDestroyOnLoad(gameObject);
        //gameObject.SetActive(false);
        Invoke("InvokeDemo", 1);
        InvokeRepeating("InvokeRepDemo", 1, 1);
        StartCoroutine(StaroutieDemo());
        //Application.LoadLevel("Editor_Scene");
    }

    void InvokeDemo()
    {
        Debug.Log("InvokeDemo");
    }

    void InvokeRepDemo()
    {
        Debug.Log("InvokeRepDemo");
    }

    IEnumerator StaroutieDemo()
    {
        Debug.Log("StaroutieDemo");
        yield return new WaitForFixedUpdate();
    }
    /*
     1、gameObject(显示):Invoke、InvokeRepeating、StartCoroutine被执行
     2、gameObject(隐藏):Invoke、InvokeRepeating被执行;StartCoroutine未执行
     3、Application.LoadLevel("Editor_Scene"):Invoke、InvokeRepeating未执行;StartCoroutine被执行
     4、Application.LoadLevel("Editor_Scene")、DontDestroyOnLoad(gameObject):Invoke、InvokeRepeating、StartCoroutine被执行
     
     */
}
   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值