unity, yield return new WaitForSeconds(waitTime) 在 Time.timeScale=0下卡死
2016-01-31 00:12
519 查看
例如下面代码:
IEnumerator f(){
Time.timeScale = 0;
float waitTime=2;
yield return new WaitForSeconds (waitTime);
Debug.Log(“hi”);
}
则“hi”永远输不出来。
欲在Time.timeScale=0的情况下wait一定时间,可用如下代码:
IEnumerator f(){
Time.timeScale = 0;
float waitTime = 2;
float t = 0;
while(true){
if(t==waitTime)break;
t+=Time.unscaledDeltaTime;
t=Mathf.Min (t,waitTime);
yield return null;
}
Debug.Log(“hi”);
}
IEnumerator f(){
Time.timeScale = 0;
float waitTime=2;
yield return new WaitForSeconds (waitTime);
Debug.Log(“hi”);
}
则“hi”永远输不出来。
欲在Time.timeScale=0的情况下wait一定时间,可用如下代码:
IEnumerator f(){
Time.timeScale = 0;
float waitTime = 2;
float t = 0;
while(true){
if(t==waitTime)break;
t+=Time.unscaledDeltaTime;
t=Mathf.Min (t,waitTime);
yield return null;
}
Debug.Log(“hi”);
}
相关文章推荐
- Unity热更新ULua(一)
- 构建ASP.NET MVC5+EF6+EasyUI 1.4.3+Unity4.x注入的后台管理系统(54)-工作流设计-所有流程监控
- Unity中的旋转和缩放
- unity, 如果碰撞使用2d物理,为防止颤动,需将更新position的代码写在FixedUpdate里
- Unity和Android互调的基本操作
- Unity里vertexShader里压扁模型来实现比较low的阴影
- Unity初探—SpaceShoot
- Unity3d报奇怪的错误CompareBaseObjectsInternal can only be called from the main thread.
- Unity3d 获取时间戳或获取北京时间
- Unity PlayerPrefs类进行扩展(整个对象进行保存)
- unity3D学习 1
- Unity5 GI与PBS渲染从用法到着色代码
- unity2DStudyTip
- Visual Studio Community 2013的安装方法
- Unity3D 固定功能函数
- Unity残影
- unity下lua.txt 在notepad++中开发环境配置
- 关于如何彻底消除unity中的弹力
- Unity Profiler之Android真机调测
- 基础差不得不学啊(unity shader中的矩阵学习一)