Flash 預設幀率(如 24/30 fps)僅為理想值。實際執行時,大量符號、複雜渲染、運算邏輯會導致幀率下降,造成畫面卡頓、掉幀。內建測試器能即時顯示平均實際幀率,幫助開發者定位效能瓶頸,優化遊戲或大型動畫專案。
新建影片剪輯 fps,舞台 350×100 px,背景 #0E6A99。
• 文字工具建立靜態文字「幀速率:」
• 再建動態文字框,屬性面板設定:
- 文字類型:動態文字
- 變數名稱:out(關鍵!用於接收計算結果)
- 字體、大小、顏色自訂

新建按鈕元件 button,四狀態簡單設計,標籤「重置」。右鍵→動作,加入:
on(release){
frame = 0; // 歸零幀計數
n = getTimer(); // 重置起始時間(毫秒)
}
將 fps 拖入主場景。右鍵該實例→動作,輸入:
onClipEvent(load){
frame = 1;
n = 0;
}
onClipEvent(enterFrame){
time = (getTimer() - n) / 1000; // 已過秒數
out = Math.ceil(frame / time); // 平均 fps = 總幀/秒數
frame++; // 累計幀數
}
fps_monitor)。fps 元件複製貼上至該圖層,調整位置至畫面角落。| 關鍵字 | 說明 |
|---|---|
getTimer() | 回傳影片播放至今的毫秒數,精度高、不受幀率影響。 |
Math.ceil() | 無條件進位,讓 fps 顯示為整數,易讀。 |
onClipEvent(load) | 元件載入瞬間執行一次,適合初始化變數。 |
onClipEvent(enterFrame) | 每幀進入時執行,構成即時監控迴圈。 |
_root.getBytesLoaded()/getBytesTotal() 同時監控載入進度與幀率,全方位掌握效能。