Unity 协同程序、中断和关卡加载

Unity 中实现中断实现:

    此处代码每一次执行的时候都只会等待一帧的执行时间。

while(true){
      //执行代码1
      yield;//等待一帧
      //执行代码2
}

   接下来可以让代码等待的时间由我们来定义:

while(true){
      //执行代码1
      yield WaitForSeconds(10.0);//等待10秒后执行代码2
      //执行代码2
}

Unity 中断与协同程序的实现如下:

yield StartCoroutine("Method");//连接协同程序
Debug.log("提示信息1");

function Method(){
       Debug.log("提示信息2");
       yield WaitForSeconds(10);//程序中断执行10秒
       Debug.log("提示信息3");
}

   在任何时间处理程序都是协同程序,但是不能Update()和FixUpdate()方法中使用协同程序,否则报错。

Unity关卡加载

function Start () {
	yield WaitForSeconds(10.0);//程序中断10秒后,在执行
	Application.LoadLevel("MainMenu");//执行加载MainMenu关卡
	Destroy(this);//销毁当前关卡对象
}

 运行结果如下图

 

猜你喜欢

转载自convolute.iteye.com/blog/1899676