荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: guita (3dmax), 信区: Multimedia
标  题: Authorware Xtras的分类和使用技巧
发信站: 荔园晨风BBS站 (Thu Jun 13 12:25:00 2002), 转信

Authorware Xtras的分类和使用技巧

一、关于各种Xtras的分类和功能

Xtras的完整的定义应该是:按Macromedia的开发规范Xtra Development Kit
(XDK)开发出来的,为Macromedia的产品提供扩展功能的部分。对用户来说,他们
不需要什么新的知识就可以熟练使用这些功能,因为它们都是用相同的C语言模板
开发出来的。具体说来,Authorware中的Xtras可以分为五类: Transition
Xtras, Sprite Xtras,Tool Xtras,Scripting Xtras,和MIX service and
Viewer Xtras。

1、Transiton Xtras

Transiton Xtras是专门处理过渡效果的Xtras,在过渡效果的选择中,除了
Internal外的那些过渡效果,都是由Xtras来提供的。

Authorware自带的Transition Xtras包括Xtras目录下的Dirtrans.X32、
Coverout.X32、Coverin.X32、Crossin.X32、Thebyte.x32。除了这些Authorware
自带的Transition Xtra外,第三方提供的Transition Xtra有DirectTransition、
DirectTransition3D、DM Transition、DM Xtreme Transition、Killer
Transitions等。

使用Transition Xtras的时候,需要把相应的Xtras拷到Xtras目录下,启动
Authorware后,在一个显示图标上按右键,选择【Transition】就可以看到刚增加
的Transition Xtras已经在列表里可以供使用了。



2、Sprite Xtras

Sprite Xtras是最为重要的一类Xtras, 它的功能是使Authorware能引入更多类型
的媒体。Authorware 5.1自带的Sprite Xtras包括Flash Xtras、Quicktime
Xtras、Animated Gif、ActiveX Xtras。第三方的Sprite Xtra有Xtragent
Xtras(用来在Authorware中插入Agent的)、QuickDraw3D Xtras(用来在
Authorware中插入一个QuickDraw 3D对象的)、OnStage SE Xtras(播放Mepg的
Xtra,带有全屏,右键控制功能)、Web Xtras(类似IE的ActiveX的Sprite Xtras,可
以对地址做过滤)、Directmedia Xtras(最好的音频和视频播放Xtras,提供丰富的
函数控制)。Sprite Xtras一般都自带有安装程序,如果没有的话,需要将新的
Sprite Xtras放到Xtras目录下,重新启动Authorware后,在Insert 菜单下就会增
加一条插入相应Xtras的指令。



要在Authorware中加入一个新的xtra部件,如一个flash动画,先在程序流程线上
点击你要加入flash动画的地方,选择菜单栏中的insert下的相应的xtras的指令,
就完成了一个部件的插入。

关于Sprite Xtras有三个重要的概念:属性,事件和方法。设置和获得Sprite
xtras的属性可以用SetIconProperty、SetSpriteProperty、GetIconproperty、
GetSpriteProperty这四个函数。补充的是用ActiveX controls时,只能用
GetSpriteProperty和SetSpriteProperty。在Authorware中对事件进行控制的变量
有EventLastMatched(保存上一次响应事件的属性列表), EventQueue(按到达
的顺序保存未处理的外部事件), EventsSuspended(为真的话,禁止事件响应打
断正在进行的流,而把发生的事件存在变量EventQueue中), GlobalTempo(控制
Xtras接受事件的速率)。处理事件的函数主要有FlushEventQueue(清空
EventQueue的内容)和SendEventReply(对Sprite Xtras产生的事件发出应答)。


该说到方法了,Authorware中的Methods必须用CallIcon或CallSprite来调用。如
CallSprite(@"IconTitle",#play),play就是一个method了。可以通过查看Sprite
 Xtras自述文件来了解Xtras提供的Method。

最后举个处理事件的例子,处理一个Flash Xtras发出的事件。在Flash中做好一个
图片,转化为一个按纽,右键选择【Property】,在Actions下的下拉菜单里选get
 url,在Url对话框内输入一个地址,如:http://www.ustc.edu.cn/。输出为Swf文
件。在Authorware中引入此Flash文件,在紧接着的流程线上加一个交互图标,交
互类型设为Event。双击打开Event响应的属性对话框,将事件发生器(sender)设
为前面的flash动画,getURL作为事件名称。在事件响应的下面加入你对事件的回
应,这里是直接跳转到一个URL指定的Web页。Authorware中对事件传递的格式大体
如下:

 [#__Sender:9085472, #__SenderXtraName:"Xtra Shockwave Flash Movie",
#__SenderIconId:65543, #__EventName:#getURL, #__NumArgs:1, #urlString:
"http://www.ustc.edu.cn"]

EventLastMatched得到的是一个属性表,从属性表中获得数据要做的是:

A. index:=FindProperty(EventLastMatched,#urlString)

来得到要使用的属性在属性表中的位置。

B. file:///C:/WINDOWS/TEMP/=ValueAtIndex(EventLastMatched,index)

根据查找出来的属性位置得到属性的值,将值存储到变量中。

C. 据得到的属性,对事件作相应的处理,如:在一个网络发布的程序中,可以跳
转到一个页面,用Gotonetpage(url)来实现。此函数在本地发行的情况下自动失效




3、Tool Xtras

Tool Xtras是提供一些Authorware实用工具的Xtras,如把wav变为swa的Xtras。
Media Shoppe的Report Designer应该也属于此类。单击【Xtras】菜单就可以看到
这些Xtras,使用方法和一般的Windows程序相同。



4、MIX service and Viewer Xtras

MIX service and Viewer Xtras 构成了Authorware的核心部分。Authorware就是
通过它们来支持多种媒体的,在Xtras目录下,可以找到很多这样的Xtras,如:
Pngimp.x32是支持Png格式图象的Xtras, Ps3imp.x32 是支持Psd格式图象的Xtras
,Swaread.x32则提供了对Swa声音文件的支持。

如果在打包后,发现运行到展示某类声音或图象时,出现“Xtras not Found”的
对话框,就是因为缺少MIX service and Viewer Xtras,把相应媒体的Xtras拷到打
包文件的Xtras目录里就可以了。

5、Scripting Xtras

Scripting Xtras以前也叫Lingo Xtras,因为它是从Director的Lingo语言转化来的
。Scripting Xtras提供一些扩展Authorware功能的函数,使用方法和使用系统函
数差不多,如Function里的Xtras Fileio就是一个Scripting Xtras。

Scripting Xtras会在Function对话框中的Category中添加相应的项目,反过来说
,在Function的Category中单独列为一类的Xtras都是Scripting Xtras。



Scripting Xtras有三个概念:全局函数,父对象和子对象。全局函数和系统标准
函数看上去没什么两样的,所不同的仅仅是它由Scripting Xtras提供。父对象和
子对象的关系就象模板(Model Palette)上的图标和流程线上的图标的关系差不
多。子对象是父对象的一个独立的例程,拥有它自己的属性和行为。使用对象完成
相应的功能要通过调用对象的方法来实现。常用到的调用父子对象方法的函数有:
 NewObject(创建子对象),CallObject(调用一个子对象), CallParentObject(
调用父对象), 和DeleteObject(删除子对象)。判别一个Xtras函数到底是全局
函数还是父子对象的方法,在Fuction中选择该函数,看它下面的Description ,如
果是父对象方法的,Description中的使用方法会是 CallParentObject打头的,同
样子对象方法以CallObject打头,全局函数则与标准系统函数的描述没有什么不同


下面的例子是要用FileIO的Xtras在当前目录下创建一个新文件。先在Function里
找到Xtra Fileio,在其下可以找到很多的文件操作的Xtra函数,找到
Createfile,这就是用来在创建新文件的,看Description:CallObject(object,
"createFile", "fileName"),说明它是个子对象方法了。

A. 创建一个名为doodoo的Fileio 子对象

doodoo:=NewObject("fileio")

    B. 在当前目录下创建名为xxx的文件。

    CallObject(doodoo,"createFile","xxx")

    再举个调用父对象方法的例子:

    doodoo1:=CallParentObject("fileio", "version")

   这是个读取FileIo Xtras版本的父对象方法。将版本号放在变量doodoo中。



二、常用Xtras的使用

1、QuickDraw 3D Xtras

QuickDraw 3D Xtras可以在Authorware中插入QuickDraw 3D文件,3dm文件可以由
3d软件输出(Chem3D可以直接输出分子模型)。

新建一个Authorware文件,在流程线上点击鼠标来指定插入Q3D的位置,然后选择
【Insert】菜单下的【ThreeD】/【QuickDraw 3D Model】,系统弹出一个对话框
,让你指定Q3D文件的位置,确定之后,就完成了一个QuickDraw 3D文件的插入。




插入一个Q3D可以选择把文件存储到外部,或者复选【import Geometry Only】,
导入模型的部分,而将贴图过滤掉,在Authorware中指定纹理贴图来得到效果。

打开QuickDraw 3D的属性对话框,【Modeling】中指定了模型的一些属性:

【Scale】初始化模型的比例

【Position】初始化模型的位置

【Rotation】初始化模型的角度

【Color】 Diffuse Color是物体表面的颜色,Specular Color是从物体表面反射
掉的光的颜色,在复选【 Import Geometry Only】的时候才有效。

【Texture】使用默认的纹理,或指定纹理贴图的位置,可以使用的纹理文件类型
有:位图文件、Quicktime Movie文件、word的Rtf文件。在File对话框里填入文件
的路径,如:C:\WINDOWS\Desktop\authorware templess\1.bmp,也可以写入相对
路径,如:1.bmp,这时需要把贴图文件放到Authorware文件的同一个目录下。



【Rendering】中设置模型渲染的一些属性:

【Renderer】有四种选择:Interactive Software是设置为软件渲染的模式,由
CPU来完成渲染,Interactive Hardware是由3D加速卡来完成渲染的。Interactive
 Best是由Q3D来确定上面哪种方式比较有利,从中选择一种。Wireframe是渲染为
线框的形式。

【Interpolation】None是没有高光区域的选择,Vertex是仅在顶点的附近作处理
,Pixel是按象素进行高光处理,效果最好,速度也最慢。

【Backfaces】定义了模型背光部分的处理,Remove是不处理,Flip是在背光部面
对镜头的时候渲染那些面对镜头的部分。Show是根据模型中原定的方向来渲染背光
部分。

【Shading】Phong同时显示在Diffuse 和Specular color照射的效果,Lambert仅
显示Diffuse color的效果,Flat忽略了所有的光照,所有地方的颜色都是相同的


【Fill】Filled显示一个固态的连续表面,Edges显示一个线框型的表面,Points
则显示为一些点集的形式。



【Lights】中设置与灯光有关的一些参数,Q3D中支持两个灯光的照明

【Directional】设置主灯光的方向和颜色、亮度的一些属性,方向可以在小球上
直接点击来调整。

【Ambient】设置环境灯光的颜色和亮度的属性。



【Camera】中设置和摄像机相关的一些属性

【Lens】设置是用广角还是普通镜头的形式

【Position】设置摄像机在空间的位置

【Orientation】Point of Interest状态下,摄像机总是对着指定点。
Direction Vector状态下,摄像机总对着指定方向。

【Clipping】设置渲染的范围,比Near定义的点近的部分和比Far定义的点远的部
分都不在渲染范围内。



【Action】是与用户在屏幕中控制Q3D对象的方式相关的

【Direct Manipulation】提供三种控制方式:【Show Badge】是在屏幕左下方显
示一个标记、【Show Controller】显示控制条、【Hide Controller】隐藏控制条


【Auto Ratate】是设置物体是否自动转动,及设置转动速度的。



2、Web Xtras

在插入一个虚拟现实文件时可以用Web Xtras。具体的步骤如下:

A.用鼠标在流程线上指定要插入Web Xtras的位置

B.按【Insert】菜单下的【Tabureilo Xtras】子菜单,插入一个Web Xtra的对象


C.把属性设置对话框中的Load at start复选框选择去掉,按确定。



D.在Sprite Xtras之后增加一个计算图标,内容为:

CallSprite(@"WebXtra", #Navigate, FileLocation^"111.wrl")

Filelocation之后的是Vrml文件相对于Authorware执行文件的路径。


--
※ 来源:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.55.226]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店