topical media & game development
actionscript-misc-FrameRateMeter.ax
actionscript-misc-FrameRateMeter.ax
[swf]
flex
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.text.*;
public class @ax-actionscript-misc-FrameRateMeter extends Sprite {
private var lastFrameTime:Number;
private var output:TextField;
public function @ax-actionscript-misc-FrameRateMeter() {
stage.frameRate = 60;
output = new TextField();
output.autoSize = TextFieldAutoSize.LEFT;
output.border = true;
output.background = true;
output.selectable = false;
addChild(output);
addEventListener(Event.ENTER_FRAME, enterFrameListener);
}
public function enterFrameListener (e:Event):void {
var now:Number = getTimer();
var elapsed:Number = now - lastFrameTime;
var framesPerSecond:Number = Math.round(1000/elapsed);
output.text = "Time since last frame: " + elapsed
+ "\nExtrapolated actual frame rate: " + framesPerSecond
+ "\nDesignated frame rate: " + stage.frameRate;
lastFrameTime = now;
}
}
}
(C) Æliens
27/08/2009
You may not copy or print any of this material without explicit permission of the author or the publisher.
In case of other copyright issues, contact the author.