首页 | CG软件 | CG信息 | CG教程 | 三维作品 | CG理论 | CG加油站 | 设计鉴赏 | Flash | 专题 | 顶客 | 论坛 | 博客 | 导航 | 下载 | 高级搜索
RSS
热门: 素材  作品  设计  照片  创意  3dsmax  优秀作品  Vray  艺术  欣赏

用Director控制动画GIF

来源:pconline 作者: 时间:2007-09-30 点击:
动画   控制   GIF   Director   用Director控制动画GIF
  动画 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 。
上一篇:Director 8.5 简单基础实例教程(7)
下一篇:Director Lingo 语言入门(5)
关键字:迅雷 快车 Baidu Director 控制 动画 GIF
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册
图腾CG联盟免责声明:本网站转载纯粹出于为网民传递更多信息之目的,无任何商业目的。如本网站转载稿件涉及版权等问题,请作者速来函admincg3000@163.com联系,在此,我们首先向您表示诚挚的歉意,并将尽快予以改正。本网站上发表的内容只代表作者本人之观点,本网站只出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。
赞助广告