Flash AS3入门教程:用帧循环制作匀速运动

所属分类: 媒体动画 / Flash教程 阅读数: 45
收藏 0 赞 0 分享

本教程是向大家介绍利用Flash AS3代码编写用帧循环制作匀速运动,介绍的很详细,转发过来,希望大家通过这篇教程能学会帧循环的运用,给给初学Flash AS编程的朋友带来帮助~~

多帧循环

Flash中的帧在默认情况下是循环执行的,租用gotoAndPlay()函数可以实现简单的帧循环,而实现代码的重复执行。

gotoAndPlay()函数的用途是控制或改变影片剪辑的播放流程,如果在影片的第1帧画面中放置需要重复执行的程序,然后在第2帧加入gotoAndPlay(1)语句。反复执行第1帧画面的程序,那么gotoAndPlay()函数就构成了一个循环程序结构。

gotoAndPlay()函数没有条件判断功能,是无条件重复的循环结构。但可以和if语句一起使用。形成具有判断终止条件功能的循环。

下面用帧循环制作匀速运动:

1、新建Flash文档
2、在图层1的第一帧创建一个实例名为mc的影片剪辑实例
3、新建as层,单击第1帧输入代码: 


复制代码
代码如下:
//得到mc的横坐标
  var dx:Number = mc.x;
//定义速度
  var speed:Number = 10;
4、在as层的第2帧插入空白帧,输入代码;
  //横坐标加上速度
dx += speed;
//设置mc的横坐标
  mc.x = dx;
5、在as层的第3帧插入空白帧,输入代码:
  //判断是否超出舞台边界
  if(dx < stage.stageWidth)
{
//跳到第2帧并播放
  this.gotoAndPlay(2);
//如超出舞台的右边界
 } else
{
//停止播放
 this.stop(); 
}

stage是Stage类的实例,Stage类有名为stageWidth的属性,表示舞台的宽度。

6、测试影片,可以看到影片实例会一直运动到舞台的右边界。

从测试结果看,影片的运动并不流畅,这与帧频和帧循环结构有关。Flash默认帧频是12FPS,就是一秒播放12帧。上面的程序由于使用了帧跳转语句,实际需要每播放两帧才会执行第2帧的代码一次,这就是说第2帧的代码执行频率是6FPS,所以动画效果会显得不流畅。

图层结构图示:

Flash AS3教程:帧循环学习实例,PS教程,思缘教程网

上面的例子执行代码的速度只有帧频的一半,而且代码分散,不适合制作复杂的应用程序。我们可以利用enterFrame事件以帧频的速度执行代码,而且代码可以集中在一帧。

用enterFrame事件制作匀速运动:

1、新建Flash文档
2、在图层1创建一个实例名为mc的影片剪辑
3、新建as图层,单击第1帧,输入代码: 


复制代码
代码如下:
//动态更改帧频
  stage.frameRate = 30;
//获取mc初始位置
  var dx:Number = mc.x;
//定义速度
  var speed:Number = 5;
//注册侦听器
  mc.addEventListener(Event.ENTER_FRAME,onMove);
//定义事件接收函数
  function onMove(e:Event)
{
//坐标加速度
    dx += speed;
//影片剪辑的坐标
   e.target.x = dx; 
//如果影片运动到舞台右边界
   if(ds > stage.stageWidth)
{
//移除enterFrame事件
    mc.removeEventListener(Event.ENTER_FRAME,onMove);
}
}

代码使用了Event类的ENTER_FRAME属性,接收函数中参数e是Event类的实例,它具有target属性,target表示事件发送者mc。

4、测试影片
使用enterFrame事件可实现代码的重复执行,它执行的速度与帧频有关。
提示:当不需要使用enterFrame事件时,一定要用removeEventListener()函数来删除enterFrame事件。

以上就是Flash AS3代码编写用帧循环制作匀速运动,希望对大家有所帮助!

更多精彩内容其他人还在看

Flash cs3绘制人物高级行走动画教程

本教程向大家介绍Flash cs3绘制人物高级行走动画效果,教程难度不是很大,绘制方法及过程介绍的也非常详细,教程很实用,转发过来,希望大家喜欢
收藏 0 赞 0 分享

Flash CS4来制作漂亮的气泡动画教程

本教程向脚本之家的朋友介绍用Flash CS4来制作漂亮的气泡动画,制作出来气泡真的很好看,制作效果是采用代码形式实现,觉得很不错,转发过来,感兴趣的朋友可以一起来学习
收藏 0 赞 0 分享

flash基础教程:帧、关键帧、空白帧概念及区别介绍

动画的产生是帧来实现的,那什么是帧?帧、关键帧和空白帧之间又有什么区别?本文就为大家介绍一下三者之间的关系
收藏 0 赞 0 分享

Flash教程:动画背景的绘制方法之透视篇(给新手)

Flash动画在网络上的广泛传播,已经成为上网一族喜闻乐见的一种艺术形式。动画背景的绘制方法有很多,也有很多表现方法。这里将结合透视学的基础知识向大家简单的介绍一下动画背景的绘制。
收藏 0 赞 0 分享

Flash AS入门教程:Flash AS3.0制作有年份有日期的时钟

本教程是向大家介绍利用Flash AS3.0制作有年份有日期的时钟,虽然制作时钟老套了点,但它确可以较全面地应用到时间日期和间隔等知识,仍不失为较好的入门练习,转发给大家,希望对大家有所帮助
收藏 0 赞 0 分享

Flash相册制作大师具体该如何使用 Flash相册制作大师使用教程

在本文中我们将会看到的是Flash相册制作大师的具体使用的方法
收藏 0 赞 0 分享

flash基础教程:混色器面板图文介绍

混色器面板是Flash中用于色彩处理的一个重要面板,熟练地使用该面板,可以帮助用户快速地完成色彩的填充,编辑出色彩丰富的图形。本教程为大家详细介绍一下混色器面板,希望对大家有所帮助
收藏 0 赞 0 分享

25个绝对让你应接不暇的Flash网站创意

在Web设计过程中,运用成熟的Flash技术可以把你任意想到的idea表现到产品页面中。这里为你整理发现了25个绝对让你应接不暇的 Flash网站创意,更好地体现网站的互动应用,同时可以让你大饱眼福,一起来欣赏吧
收藏 0 赞 0 分享

教你用Flash制作非常酷的二进制时钟动画

今天在这个教程中我们将学习用Flash做一个不同寻常的,但非常酷的时钟:一个二进制时钟,中间用到了代码,但介绍地很详细,相信很值得大家学习
收藏 0 赞 0 分享

Flash动画特效制作技巧:制作超酷的文字炸开动画效果

本教程向大家介绍Flash动画特效制作技巧,本实例是制作文字炸开的动画效果,制作效果非常酷,制作过程也比较简单,喜欢的朋友可以过来学习一下这种制作方法
收藏 0 赞 0 分享
查看更多