Director作为众多多媒体开发者的手选工具,其特长远远不止于动画的制作,丰富的内置Library和Behavior,以及强大的Lingo编程功能,才是它的精华所在,下面我们介绍Director的可视化交互功能。
六、可视化的交互创作
交互是多媒体的灵魂,如果一个多媒体作品没有交互,那它称不上是一个合格的多媒体作品,只能称作是幻灯片。所谓交互就是人机进行沟通,沟通的方法各种各样,最常用的交互是你鼠标点击一个按钮,程序执行响应的子程序。更好的交互系统还具备提示功能,在你点击错误是,程序会提示你如何进行正确的操作。当然,交互还有很多方面的应用,例如现在网上比较流行的鼠标跟随,也可以称作是一种交互,程序判断你的鼠标状态,然后做出响应的反映。一些更有趣的交互是你可以直接对着计算机的麦克风发命令,让它为你执行各种程序。
然而,交互虽然用起来非常舒服,做起来却没这么简单,在Director以往的版本中,虽然可以用很简单的命令来进行交互程序的设计。但是对于不喜欢编程的用户还是一件苦的差事,从Director6.0开始,Macromedia试图改善这种状况,开始增加了一些Behavior来减轻程序员的负担,扩大Director的开发队伍,知道现在的8.0,这种状况终于得到彻底的改观,你不需要写任何语句,就可以做出以前只有专业程序员才能做出的效果!心动了吗,开始行动吧。
熟悉Dreamweaver的人,对Behavior不感到陌生,其实Behavior就是一些别人提你写好了的程序,你直接把它们放到正确的地方,然后把一些参数设置一下就可以了。Director的预定义Behavior的是通过LibraryPalette窗口来实现的。选择Window>LibraryPalette命令,可以显示这个窗口。使用LibraryPalette窗口,你可以单击、拖动并把行为添加到你的影片中,但是你“不能”编辑或者删除这些行为。
我们通过一个简单的交互实例来介绍在Director中如何进行可视化的交互程序开发。我们设计的一个交互程序是这样的:首先是一个静止的场景,在场景中有两个按钮,一个按纽是跳转到精灵的鼠标跟随画面,一个按钮是跳转到精灵躲避鼠标的画面。在这两个画面中,都有一个返回按钮可以返回到主场景。
第一步:准备素材:
1、新建一个影片,设置大小为400*300。
2、把fun.dir中的“青山”、“蜜蜂”、“未开的花”、和“盛开的花”四个演员复制到新的影片的演员表中。
3、在Paint窗口中制作一个红色的按钮。
4、复制此红色按钮,并在紧接着的演员窗口粘贴此演员,再通过Paint窗口把它的颜色变为兰色,作为按钮的Rollover状态。
第二步:布置主场景:
5、把“青山”演员拖到舞台上,放置到合适位置。把帧的跨度设为10。
6、把红色按纽放到屏幕偏左下放合适的位置,并设置Ink属性为Matte。把帧的跨度设为10。
7、选择Window>LibraryPalette命令,显示出LibraryPalette面板。
8、单击左上角的“LibraryList”按钮,在弹出的菜单中选择Controls库。
9、把PushButton库拖到舞台的红色上。
10、系统弹出对话框,提示将把下一个演员当作按钮的RollOver状态,单击OK。
11、单击运行按钮,可以看到当鼠标移动到红色按钮上时,按纽变为兰色。
12、在演员表中,建立一个文字演员,输入“到鼠标跟随”。
13、把文字演员放到按钮的正下方,并设置Ink属性为Matte。
14、在LibraryPalette面板左上角的“LibraryList”中选择Navigation库。
15、拖动PlayFrameX库到按钮上,在弹出的对话框中输入15,表示鼠标单击此按钮时,播放头移动到第15帧。
16、用同样的方法在右下角建立另一个按钮,在其下放置“到躲避鼠标”文字演员。并把PlayFrameX库属性设置为30。
17、拖动HoldonCurrentFrame到第10帧处的Script通道中。表示播放到第10帧,就自动停止,一直等待用户输入。
18、单击运行按钮,查看运行情况。
第三步:制作鼠标跟随画面。
19、复制第1到10帧的青山演员,粘贴到第15帧开始处。
20、把“未开的花”演员拖到舞台上合适的位置,并进行大小缩放。
21、设置工具面板中背景的颜色为黑色,在精灵的Ink属性中选择BackgroundTransparent。
22、拖动“蜜蜂”演员到舞台,设置起Ink属性为Matte。
23、在LibraryPalette中的LibraryList按钮中选择Animation下的Automatic库。
24、拖动RandomMovementandRotation库到“蜜蜂”精灵上。这样在没有鼠标动作时,蜜蜂会自动飞行。
25、在LibraryPalette中的LibraryList按钮中选择Animation下的Interactive库。
26、拖动SpritetrackMouse库到蜜蜂上,这样蜜蜂就会跟随鼠标运动。
27、在右上角建立一个返回按钮。单击后可以回到第10帧。
28、在第25帧的Sprite通道设置HoldonCurrentFrame行为。这样播放头就会停留在25帧处,等待鼠标动作。
第四步:制作鼠标躲避画面。
29、参见第三步,可以顺利制作出精灵躲避鼠标的画面。
整个制作完成,单击运行按钮检查影片是否运行正常。
第五步:生成EXE文件。
30、保存文件后,选择File>CreateProjector,在弹出的面板中选择刚才保存过的dir文件,单击Create按钮,然后在弹出的面板中输入文件名,单击保存按钮。
OK!大功告成,一个漂亮的EXE文件就生成了,感觉如何,没有写任何代码吧?
MPG视频文件的控制与路径设置
MPG视频文件
DirectMediaXtra 是一个非常强大的第三方插件,它支持 MPEG、AVI、WAV、 QuickTime、AIF、MP2和 MIDI文件,并且提供了对 AVI、MPG等视频文件的完全支 持和控制,能够极大的扩展 Director 对视频文件的控制能力,在众多插件中使用频率 几乎是最高的。
1. 获取 DirectMediaXtra演员成员和精灵的属性
DirectMediaXtra 插件是一种可视化操作的插件,它能在 Director 的演员表中生成 一个演员成员,在需要播放视频的地方只需在舞台或精灵通道内创建由该演员成员生 成的精灵即可。DirectMediaXtra 插件可获取由它导入和创建的视频演员成员和精灵的 各种各种属性。
视频演员成员的属性主要包括文件路径、文件名、文件长度、宽度、高度、音 量、平衡度、播放速率等与媒体文件本身相关的属性,而精灵则包括当前播放的视频 的时间、速度和播放的状态等属性。
File属性用于获取链接的外部视频文件的完整路径名,例如: put member(\ -- \
title属性用于获取链接的外部视频文件的文件名,不含路径名称,例如: put member(\ -- \
Duration和 CurrentTime 属性分别用于获取链接的外部视频文件的时间长度和精灵 通道内播放的视频文件的当前时间,单位是毫秒,例如: totalTime=member(\curTime=sprite(1).CurrentTime
ToolTip=\当前播放进度:\put ToolTip
-- \当前播放进度:12.6789%\
videoWidth 和 videoHeight 属性用于获取链接的外部视频文件的宽度和高度,单位 是像素,例如:
put member(\put member(\-- 352 -- 240
Volume 属性获取链接的外部视频、音频文件的音量,单位为分贝,范围在-100 至 0之间,例如:
put member(\--0
Balance 属性用于获取链接的外部视频、音频文件的平衡度,单位为分贝,范围 在-100到100之间,例如: put member(\--0
Rate 属性用来获取外部链接的视频文件的播放速度,为一个百分比,范围在 0 至 200之间,默认值为100。例如: put member(\--100
loop属性获取外部链接的视频文件播放时是否循环播放的设置情况,例如: put member(\