1(function(){ 2 3var framesPerTimerReading = 10; 4var frameCount = 0; 5var startTime; 6var trackingFrameRate = false; 7 8function trackFrameRate(currTime) 9{ 10 if (++frameCount == framesPerTimerReading) { 11 frameCount = 0; 12 PerfTestRunner.measureValueAsync(1000 * framesPerTimerReading / (currTime - startTime)); 13 startTime = currTime; 14 } 15 16 if (trackingFrameRate) 17 requestAnimationFrame(trackFrameRate); 18} 19 20window.startTrackingFrameRate = function() { 21 if (trackingFrameRate) 22 return; 23 trackingFrameRate = true; 24 startTime = performance.now(); 25 trackFrameRate(); 26}; 27 28window.stopTrackingFrameRate = function() { 29 trackingFrameRate = false; 30}; 31 32})(); 33