最近使用中遇见一个功能,需要制作一个类似于播放器的时间轴,时间轴可以按10微妙进行前进,每次前进需要触发些特殊功能。
本想通过schedule来设置slider实现,但是时间间隔设置为1秒没问题,设置为0.1秒时间就开始不准确!设置为0.01秒就更加不准确。
看了源码,好像Time是通过updata方法来进行定时更新的…
不知道有没有人遇见过需要精确计时的功能!求高手帮忙!
最近使用中遇见一个功能,需要制作一个类似于播放器的时间轴,时间轴可以按10微妙进行前进,每次前进需要触发些特殊功能。
本想通过schedule来设置slider实现,但是时间间隔设置为1秒没问题,设置为0.1秒时间就开始不准确!设置为0.01秒就更加不准确。
看了源码,好像Time是通过updata方法来进行定时更新的…
不知道有没有人遇见过需要精确计时的功能!求高手帮忙!
使用schedule方法作定时器执行越久,时间误差越大的,在一些卡帧耗时操作上会发生误差。
可以在update方法中记录上一次调用update到本次调用所经过的时间,来计算时间。
例如:
float _curTime;
void Timer:update(float dt){
_curTime += dt;
}
_curTime 就是相对准确的时间了。


感谢感谢,现在不通过定时器来处理那些逻辑了!还是十分感谢
用时间戳的差