我正在使用C#和XNA。 Game类中有这种方法
Update(GameTime gameTime)
我需要在这个方法中执行我的函数大约每秒4次。我该如何实现这一目标?
到目前为止,我只能通过
知道新的第二次开始 if (gameTime.TotalGameTime.Milliseconds == 0)
但我需要一种方法来每秒特定时间运行我的函数。但我无法弄清楚我是怎么做到的......
答案 0 :(得分:2)
您需要保留一个单独的计数器,以及调用您的函数的时间间隔。每秒4次,这是float interval = 1/4;
。
每帧,用自上一帧以来经过的毫秒数更新计数器。
检查此计数器是否大于间隔;如果是这样,至少interval
秒已经过去并且需要调用该函数。
答案 1 :(得分:1)
另一个选项可能是使用 System.Timers
中的 Timer 类此类允许在您的应用程序/游戏中运行重复事件。
有关详情,请参阅此处:http://msdn.microsoft.com/en-us/library/system.timers.timer.aspx