怎么暂停游戏呢?就像是按下ESC后弹出一个GUI窗口,可以回主菜单,可以继续游戏,可以查看一些东西(比如身上的装备)等等的,同时游戏里会被暂停。
Update不受timeScale影响,FixedUpdate受timeScale影响,可以用一个脚本监听暂停键来控制timeScale
但我想可不可以这样:游戏中物体的控制脚本,不要Update函数和FixedUpdate函数,而是另实现一个接口函数,如命名为MyUpdate。创建一个物体,挂载timeKeeper脚本,游戏中所有的物体一经创建,就在timeKeeper处注册,timeKeeper的任务就是在每一帧去调用所有注册物体的MyUpdate。
这样,停止timeKeeper的调用就达到了暂停的效果。再结合TimeScale=0来停止所有的动画。
如果用一些方式将物体分组,也许还能想停哪些停哪些,游戏里的时停技能也许都可以这样子实现?
问题:不知道这样做会不会带来性能上的大量不必要开销。我想应该不会吧?
Update不受timeScale影响,FixedUpdate受timeScale影响,可以用一个脚本监听暂停键来控制timeScale
但我想可不可以这样:游戏中物体的控制脚本,不要Update函数和FixedUpdate函数,而是另实现一个接口函数,如命名为MyUpdate。创建一个物体,挂载timeKeeper脚本,游戏中所有的物体一经创建,就在timeKeeper处注册,timeKeeper的任务就是在每一帧去调用所有注册物体的MyUpdate。
这样,停止timeKeeper的调用就达到了暂停的效果。再结合TimeScale=0来停止所有的动画。
如果用一些方式将物体分组,也许还能想停哪些停哪些,游戏里的时停技能也许都可以这样子实现?
问题:不知道这样做会不会带来性能上的大量不必要开销。我想应该不会吧?