• 微课视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
微课江湖
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 微课视频
  • photoshop
  • Fireworks
  • CorelDraw
  • Illustrator
  • Painter
  • Freehand
  • Indesign
  • flash
  • maya
  • autocad
  • 3dmax
您的位置:首页 > 平面设计 >flash > ActionScript3.0中建立帧频计数器的方法

ActionScript3.0中建立帧频计数器的方法

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-05-24

佚名 向大家分享了ActionScript3.0中建立帧频计数器的方法,其中包含actionscript3.0,actionscript3.0教程,actionscript3.0下载,actionscript3.0语言,actionscript3.0和2.0等知识点,遇到此问题的同学们可以参考下

帧频的重要性
每一帧上都是一幅静止的图片,快速连续的帧会产生动画,每秒的帧数越多,展现的动画也就越流畅。

测帧频能让我们检测动画的进程,如果需要的话还可以优化动画。

当在不同的运行环境中测试动画时这个是非常有用的,例如浏览器中,电脑中,电视或手机中。

我们可以通过使用getTime()方法测帧频,并即时的在舞台中创建文本域来输出结果。

——————————————————————————–

第一步:创建新文档
打开Flash并创建一个新Flash文档(ActionScript 3).

——————————————————————————–

第二步:打开动作画板

执行窗口>动作打开动作面板。

——————————————————————————–

第三步:变量

我们将使用三个变量,如下所示:

var startTime:Number; //用来计算相对时间
var framesNumber:Number = 0; //当前帧频数
var fps:TextField = new TextField(); //展示实际帧频的文本域

——————————————————————————–

第四步:主函数
这是计数器的主函数:

function fpsCounter():void
{
startTime = getTimer(); //当动画开始时以毫秒为单位获取时间
addChild(fps); // 向舞台添加文本域

addEventListener(Event.ENTER_FRAME, checkFPS); //添加逐帧监听器并执行checkFPS函数
}

——————————————————————————–

第五步:检查帧频

这个函数将计算频帧:

function checkFPS(e:Event):void
{
var currentTime:Number = (getTimer() – startTime) / 1000; //当函数执行的时候以秒为单位获取时间

framesNumber++; //计数器加1

if (currentTime > 1) //判断当前时间是否比1大
{
fps.text = “FPS: ” + (Math.floor((framesNumber/currentTime)*10.0)/10.0); //计算频帧并在文本域展示
startTime = getTimer(); //重设开始的时间
framesNumber = 0; //重设帧数
}
}

——————————————————————————–

第六步:调用函数
用下面的一行代码启动主函数:

fpsCounter();

——————————————————————————–

第七步:全部的代码:

全部的代码是下面这样的:

var startTime:Number;
var framesNumber:Number = 0;
var fps:TextField = new TextField();

function fpsCounter():void
{
startTime = getTimer();
addChild(fps);

addEventListener(Event.ENTER_FRAME, checkFPS);
}

function checkFPS(e:Event):void
{
var currentTime:Number = (getTimer() – startTime) / 1000;

framesNumber++;

if (currentTime > 1)
{
fps.text = “FPS: ” + (Math.floor((framesNumber/currentTime)*10.0)/10.0);
startTime = getTimer();
framesNumber = 0;
}
}

fpsCounter();

——————————————————————————–

第八步:文档类版

可能比起时间轴代码你更习惯用文档类。下面的部分说明了如何使用。

package
{
import flash.display.MovieClip;
import flash.text.TextField;
import flash.events.Event;
import flash.utils.getTimer;

public class FPSDemo extends MovieClip
{
public var startTime:Number;
public var framesNumber:Number = 0;
public var fps:TextField = new TextField();

public function FPSDemo()
{
fpsCounter();
}

public function fpsCounter():void
{
startTime = getTimer();
addChild(fps);

addEventListener(Event.ENTER_FRAME, checkFPS);
}

public function checkFPS(e:Event):void
{
var currentTime:Number = (getTimer() – startTime) / 1000;

framesNumber++;

if (currentTime > 1)
{
fps.text = “FPS: ” + (Math.floor((framesNumber/currentTime)*10.0)/10.0);
startTime = getTimer();
framesNumber = 0;
}
}
}
}

你应用这个类在任意一个项目中嵌入一个这样的频帧计数器:

var fpsDemo:FPSDemo = new FPSDemo();
addChild( fpsDemo );

只要将它复制到一个新AS文件中并保存为“FPSDemo.as”就行了。

结论
这是一个使用帧频计数器函数的基本的例子。试试并将它用到你的项目中。

谢谢阅读。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • ActionScript3.0中建立帧频计数器的方法
  • ActionScript3.0读取网页FlashVars中的参数的问题
  • Flash ActionScript编程基础
  • Flash教程 认识Flash ActionScript的环境
  • 用纯Flash Actionscript做的火柴棍小人跑的动画
  • ActionScript的API文档生成工具ASDoc
  • Flash Actionscript 优化指南
  • Flash Actionscript常用的几段代码
  • 优化Flash Actionscript代码的三种方法
  • Flash中的ActionScript3.0脚本语言制作小游戏

相关文章

  • 2017-05-24flash as3生成XML文件实现程序
  • 2017-05-24Flash绿色版打开提示Java出现错误的解决方法
  • 2017-05-24flash制作对象沿着一条指定的路线运行的路径动画
  • 2017-05-24flash怎么制作茶壶水壶?
  • 2017-05-24Flash AS 入门教程 圆和椭圆函数的应用
  • 2017-05-24flash制作一种可以转动的绚丽花环
  • 2017-05-24flash怎么制作最小公倍数计算器?
  • 2017-05-24flash模拟弯弓射箭的gif动画效果
  • 2017-05-24黑色伤感QQ空间flash皮肤动画制作
  • 2017-05-24flash怎么制作轮胎按照轨迹旋转的动画?

文章分类

  • photoshop
  • Fireworks
  • CorelDraw
  • Illustrator
  • Painter
  • Freehand
  • Indesign
  • flash
  • maya
  • autocad
  • 3dmax

最近更新的内容

    • FLASH怎么制作一个汤勺移动的动画?
    • Flash制作青蛙跳荷叶游戏动画
    • Flash制作星球大战文字动画特效教程
    • Flash设计制作卡通风格的圣诞树实例教程
    • Flash 播放器的安全性设置
    • Flash怎么制作流动七彩色的文字?
    • Flash绘制切开的西瓜和咸鸡蛋之渐变绘画技术介绍
    • 去除Flash动画在线播放限制的技巧
    • 教你如何在Flash中实现动态模糊效果
    • 如何把fla文件输出成和swf一样的gif文件

关于我们 - 联系我们 - 免责声明 - 网站地图

©2015-2018 All Rights Reserved. 微课江湖 版权所有