等待一段代码的功能?

时间:2016-01-03 03:55:36

标签: c++ visual-c++

我正试图暂停一段代码。我试过做一个不太有效的for循环,我只想暂停一个部分。

wait()工作还是暂停整个程序?

我正在为我的课程制作一个游戏,我想到让AI以设定的速度移动的唯一方法就是暂停它们并每隔1-3秒移动一次(例如)。

有没有人为我提供解决方案?

编辑:我显然是个白痴。没有任何wait()函数解决问题。谢谢你的帮助!

1 个答案:

答案 0 :(得分:1)

这取决于你如何运行AI。如果AI有一个你可以暂停的线程,那可能会有效。但我个人会采取另一种方法:

  • 尝试使速度相对于前一帧的增量时间。

    Movement+=velocity*dt;  //velocity per second * time of previous frame in seconds
    
  • 拥有固定的帧速率并使用幻数(固定的增量时间)来达到与之前相同的效果。

(睡眠Sleep for milliseconds

  • 使用计数器和if只在某些时刻运行代码的该部分。

    ...
    time+=dt;
    if (time>3){
    ...
    time=0.0f;
    }