@@ -1,39 +0,0 @@
1−
2−var FrameRate = function() {
3−
4−var desiredFPS = 40;
5−var msPerFrame = 1000 / desiredFPS;
6−
7−// Set the desired rate of frames per second.
8−// Default is 40 if no desiredFPS event is triggered.
9−document.addEventListener('desiredFPS', function(e) {
10− console.log(e.value);
11− desiredFPS = e.value;
12− msPerFrame = 1000 / desiredFPS;
13− });
14−
15−
16−var date = new Date();
17−var startTime = date.getTime();
18−var frameStart = startTime;
19−var frameEnd = startTime;
20−var timeoutID = 0;
21−
22−// Trigger time events to try to maintain the desired FPS.
23−document.addEventListener('finished', function(evt) {
24− clearTimeout(timeoutID);
25− date = new Date();
26− frameEnd = date.getTime();
27− var diff = frameEnd - frameStart;
28− var waitTime = Math.max(msPerFrame-diff,3);
29− timeoutID = setTimeout(function() {
30− date = new Date();
31− frameStart = date.getTime();
32− var e = document.createEvent('Event');
33− e.initEvent('trigger', true, true);
34− e.value = (frameStart - startTime) / 1000;
35− document.dispatchEvent(e);
36− }, waitTime);
37− });
38−
39−}();