博学渗透测试工程师CISP-PTE/渗透测试*CISP-PTS课程
面议发布时间: 2005-12-24 00:00:00
Flash作品中预设的帧速率只是理想化的,实际上Flash处理程序或是渲染图像时需要消耗一定的时间,加上机器的差别,动画运行时每一帧的显示速度不尽相同。比如在一帧中放置过多的符号,该帧的帧速率就会远远低于预设的帧速率,导致画面播放不流畅,或是掉帧的情况。如果使用帧速率测试器来检测您的动画,则可发现上述问题。因为帧速率测试器工作时会显示出影片当前的平均帧速率。总之,无论是设计游戏还是制作大型动画,速度慢、运行不稳定的作品是不会有吸引力的,谁也无法去忍受一个只有4帧/秒的动画。
设计要点:
首先测试器本身要尽量的简单,否则会影响测试效果。测试器中主要就是一个用来输出测试结果的动态文本和一个重置按钮。使用重置按钮是为得到一个经过准确计算的帧速率,其工作方式就是刷新测试器。测试器测试本身时,显示的帧速率应该和预设值是一样的,我们这个例子预设为36帧/秒。
效果预览:
3、按快捷键"Ctrl+F8"新建一个名为"button"的按钮符号(按钮的设计要尽量简单)。在按钮上输入"重置"两个字,如示例所示。
4、点击按钮,点选弹出菜单中的"动作"命令,在"动作"面板中输入如下代码:
on(release){ //release事件是在鼠标指针经过按钮时释放鼠标按钮
frame = 0; //变量frame的作用是纪录当前帧数
n = getTimer(); //函数getTimer()可以返回影片已经播放的时间,单位为毫秒
}
5、回到主场景中。按快捷键"Ctrl+L"打开库,把库中的影片剪辑符号"fps"拖拽到主场景中。
6、右键点击影片剪辑"fps",点选弹出菜单中的"动作"命令,并在"动作"面板中输入如下代码:
//onClipEvent是一个"事件"触发器。当某个事件发生时,就执行花括号中的语句。
//load事件是当影片剪辑被载入时,即执行语句。
onClipEvent (load) {
frame = 1;
n = 0;
}
onClipEvent (enterFrame) { //enterFrame事件是以影片每执行一帧就执行一次语句
//变量time用来纪录当前影片运行的时间
time = (getTimer( )- n)/1000;
//Math对象的ceil方法可以返回大于等于括号中数值并与其最接近的整数
//当前帧数frame除以播放时间time即可得到当前的帧速率
out = Math.ceil(frame/time);
//变量frame(帧数)进行累加
frame++;
}
到这里,这个帧速率测试器就设计好了。现在只要把它直接复制并粘贴到所要测试的动画中就可以使用了。注意,使用测试器时,*先在被测试动画的场景中新建一层,然后再把测试器复制、粘贴到该层中,这样便于调整测试器的位置以及修改和清除。原文件下载学习
更多培训课程,学习资讯,课程优惠,课程开班,学校地址等学校信息,请进入 东莞设计培训网网站详细了解
咨询电话:400-850-8622
相关文章
最新文章
相关课程