/*-----------------------------------------------------*/
/*
コピペで 『フレームレート測定器』
_root のアクションレイヤー フレーム1 などにコピペするだけで使用可能。
処理が重い軽いやフレームレートの変動などの確認に利用できます。
ただしCPU はこの測定器の動作にも使われるため正確とは言えません。
「観測する行為自体が対象に影響を与える」〜京極夏彦「姑獲鳥の夏」より
〜↓変造・改良などは自由にしてください↓〜
*/
// ◎ フレームレート表示用のテキストフィールドの作成
// _root の深度1000に インスタンス名 framerate のMCを作成
_root.createEmptyMovieClip("framerate", 1000);
// _root.framerate のパスを変数化
frm = _root.framerate;
// MC framerate にテキストフィールド counter を作成
frm.createTextField("counter", 0, 10, 10, 60, 20);
frm.counter.border = true;
frm.counter.borderColor = 0xA0A0A0;
frm.counter.background = true;
frm.counter.backgroundColor = 0xDDDDDD;
// MC framerate にテキストフィールド tanni を作成
frm.createTextField("tanni", 1, 50, 10, 20, 20);
frm.tanni.text = "fps";
//
//アナログ表示枠の作成
frm.createEmptyMovieClip("waku", 2);
frm.waku.beginFill(0xDDDDDD, 100);
frm.waku.lineStyle(1, 0xA0A0A0, 100);
frm.waku.moveTo(9, 35);
frm.waku.lineTo(9, 40);
frm.waku.lineTo(20, 40);
frm.waku.lineTo(20, 35);
frm.waku.lineTo(20, 40);
frm.waku.lineTo(30, 40);
frm.waku.lineTo(30, 35);
frm.waku.lineTo(30, 40);
frm.waku.lineTo(40, 40);
frm.waku.lineTo(40, 35);
frm.waku.lineTo(40, 40);
frm.waku.lineTo(50, 40);
frm.waku.lineTo(50, 35);
frm.waku.lineTo(50, 40);
frm.waku.lineTo(60, 40);
frm.waku.lineTo(60, 35);
frm.waku.lineTo(60, 40);
frm.waku.lineTo(71, 40);
frm.waku.lineTo(71, 35);
frm.waku.lineTo(71, 50);
frm.waku.lineTo(9, 50);
frm.waku.lineTo(9, 35);
triangle_mc.endFill();
//
//アナログバーの作成
frm.createEmptyMovieClip("bar", 3);
frm.bar._x = 10;
frm.bar._y = 40;
frm.bar.beginFill(0x00FF00, 100);
frm.bar.moveTo(0, 1);
frm.bar.lineTo(10, 1);
frm.bar.lineTo(10, 10);
frm.bar.lineTo(0, 10);
triangle_mc.endFill();
//
// ドラッグ可能にする
frm.onPress = function() {
this.startDrag();
frm.counter.backgroundColor = 0xFFFFCC;
};
frm.onRelease = frm.onReleaseOutside=function () {
this.stopDrag();
frm.counter.backgroundColor = 0xDDDDDD;
};
//
// ◎ フレームレートのカウント処理
// 経過時間の初期値
tm = getTimer();
// 1フレーム進む時間毎に随時実行
frm.onEnterFrame = function() {
// 変数 rate に フレームレートの小数第3位までを代入
rate = Math.round(1000000/(getTimer()-tm))/1000;
// テキストフィールドにそのフレームレートを表示
frm.counter.text = rate;
// アナログ表示バーをその横幅にする
frm.bar._width = rate;
tm = getTimer();
};
/*-----------------------------------------------------*/
|