我需要一个显示加速时间的时钟。也就是说,在该时钟中100毫秒的实时时间= 1分钟的程序时钟或类似的东西。
基本上我想模拟足球比赛。所以我需要一个时钟,每次从0开始运行到90分钟。但是现实世界的90分钟太长了,我需要加快时间。
此外,我每次运行时都需要显示时钟。
我不熟悉从系统播种时间和使用clock()
等函数的方法。
答案 0 :(得分:3)
如this answer所述,您可以使用计时器事件来睡一段时间。您需要将您的睡眠持续时间映射到实际时间,例如,如果您的线程休眠1秒钟,则代表1分钟的播放时间。
使用此投射,您可以确保90秒的模拟时间代表90分钟的游戏时间。
一些伪代码可以帮助您入门:
count = 1
interval = 1
max_time = 90
while true
if count++ == max_time
break
end
perform_simulation_function()
sleep interval
end