网络软件系统工具应用软件图形图像多媒体类免费游戏安全相关免费音乐网页素材 电子书籍考试考题建站源码
教育教学多媒体类编程开发操作系统游戏天地娱乐天地简历求职站长专区网页设计安全技术图形图像文学驿站
业界资讯 | 图形图像 | 操作系统 | 网络冲浪 | 工具软件 | 办公软件 | 媒体动画 | 精文荟萃 | 认证考试 | 网页设计 | 技术开发 | 专栏
当前位置:热点网络学院媒体动画Director用Director控制动画GIF
精品推荐
热点TOP10
·Director生成文件减肥技巧
·用Director控制动画GIF
·Director怎样制作自定义光标
·利用director.ini调试应用程序
·director使用mui xtra创建对话框
·director应用技巧
·Director中控制声音音量的几种方法
·DIRECTOR去背技法步步高
·Director 3D 基础(之七)
·Director 3D 基础(之六)
·Director 3D 基础(之五)
·Director 3D 基础(之四)
·Director 3D 基础(之三)
·Director 3D 基础(之二)
·Director 3D 基础(之一)
·Director制作《七巧板》游戏
·【Director教程】lists的使用一则
·【Director教程】属性列表应用一则
·【Director教程】创建随机列表
·【Director教程】解析文本和列表
用Director控制动画GIF
日期:2006年10月15日 作者: 查看:[大字体 中字体 小字体]
动画GIF可以非常方便的用在你的Director作品中。它们很小,相对的比较容易建立,而且也可以用在Web页面里。所以如果你正在建立一个Shockwave短片并把它和Web页放在一起,那么你把动画GIF用到Director里,你就会发现它可以完成多么完美的场景。但是一旦你把动画GIF放进你的电影里,你可能会想到要增加一些控制方法以便于关闭它们。首先,你要从基础开始。

  开始,停止和重复

  这三个基本的Lingo命令是用来控制动画GIF的暂停,继续和重复的。当用这些命令的时候,你需要紧记的是:它们只能与一个sprite在关联中一起用。例如,你可以说:

sprite (10).resume ()

或者

sprite (10).pause ()

  然而,在涉及到一个cast成员的时候,你不能用这些功能。所以如果你输入member (‘‘animGIF‘‘).resume (),Director会返回一个错误信息,里面会说在对象中没有找到处理者。

  在电影中使用暂停和继续的一个简单的方法就是建立一个行为,你要把它放进动画GIF中。这个行为可以使正在播放的GIF暂停,也可以使暂停的GIF开始播放。这个行为的原代码如下:

property pPlayState

on beginSprite me
  
  pPlayState = true
  me.updateGIF ()
  
end

on mouseUp me
  
  pPlayState = not pPlayState
  me.updateGIF ()
  
end

on updateGIF me
  
  if pPlayState then
    sprite (me.spriteNum).resume ()
  else
    sprite (me.spriteNum).pause ()
  end if
  
end

  这个行为开始于设置pPlayState变量为真,然后会呼叫updateGIF处理者。这个处理者就会检查pPlayState是否为真。如果为真,那么它就会播放动画GIF,否则它就会暂停动画GIF。最后,无论何时,只要你点击GIF,它都会固定pPlayState的值并且以呼叫ipdateGIF处理者来确定是播放还是暂停。

  控制动画GIF的速度

  如果你想要控制一个动画GIF的速度,那么这里有两条Lingo语句你需要使用:playBackMode 和 fixedRate。

  PlayBackMode语句有三个不同的选项来控制一个动画GIF如何播放。第一个选项,#normal,用动画GIF本身的定时信息来确定帧的的播放时间。第二个选项,#lockStep,像Director电影中的Score一样以同样的速度播放动画GIF的每一帧。这个选项用于确认动画与你电影中的基础帧动画同步。这个选项的基本意思就是说如果你的动画GIF有不同长度的帧,那么在播放时就会不同步,直到playBackMode被设置成#normal。

  playBackMode的最后一个选项是#fixed。当你把一个动画GIF的playbackMode设置成#fixed,那么你就可以通过另一个叫fixedRate的Lingo特性来控制回放(playback)。fixedRate特性一个数字,它描述一个动画GIF的单独帧的速度。你必须记住当你设置fixedRate时,它的值必须是一个整数而且不能为0—它至少是1。如果你想停止动画GIF,你必须用暂停命令。

  关于暂停,继续和重复还有playBackMode和fixedRate特性,它们最大的不同在于playBackMode 和fixedRate是cast成员中的特性,而不是sprite。所以在你的代码中你必须写明:

member (‘‘animGIF‘‘).playBackMode = #fixed
member (‘‘animGIF‘‘).fixedRate = 20

But if you tried to say

sprite (10).playBackMode = #fixed

  并且在sprite 10中的成员不是一个动画GIF,那么你将得到一个错误信息。

  当你把所有的事情放在一起做时,你会吃惊于你可以如此控制一个动画GIF。这里有一个电影可以示范action中这里提到的Lingo。(相关附件请点击这里下载)

  在你的Director电影中使用动画GIF是减小文件大小的一个有效的方法,并且潜在的节约你大量的时间,因为你可以使Director中己存在的动画GIF得不到休息的时间。动画GIF的唯一的缺点就是你不能完全的控制它。你不能让一个动画GIF跳到一个特定的帧上,而且你不可能轻易的知道哪个帧是在动画GIF上的。如果你需要在你的程序中加入这种功能,那么你有两个选择。你将要用位图和电影遁环来重做Director里的动画GIF或者你在Director里可以以Quicktime movie的格式导入动画GIF。但是这个最后的选择要求用户的机子里安装了Quicktime。

(出处:http://www.vipcn.com

关于我们 | 帮助(?) | 版权声明 | 友情连接 
Copyright 2005-2005 viphot.com All Rights Reserved.
Powered by:mesky