Unity之Invoke、InvokeRepeating、StartCoroutine学习一

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被执行
     
     */
}
   

你可能感兴趣的:(游戏开发语言之Unity3D)