Individual Entry

【翻译】SWF结构规范第四章:显示列表(一)

SWF结构规范已经在图书下载专题中提供下载。

这里仅公布去年翻译的SWF结构规范第四章:显示列表。

正文:
SWF文件的每一帧的显示都需要经过三个过程:
1 对象被定义标签(definition tags)定义(定义标签包括DefineShape,,DefineSprite等)。每个对象都有一个唯一的ID,该ID被叫做角色(character),存储在被叫作字典(dictionary)的库中。
2 被选中的角色从字典中拷贝,之后置于显示列表(display list),该列表内含有下一帧将要显示的所有对象。
3 上面两个过程一旦完成,显示列表中的内容就会通过ShowFrame标签呈递给屏幕。显示列表中的所有对象都含有一个深度(depth)值,深度决定了对象的排列层次。低深度的角色在高深度的角色之下。深度为1的角色显示于最底处。显示列表种可以有多个相同的角色,但它们必须处于不同的深度,一个深度只能容纳一个角色。
在SWF 1和2中,显示列表结构简单,包含了屏幕上此时显示的所有对象。SWF 3和之后的版本中显示列表是有层次的,显示的对象仍然可以有一个关于其子对象的列表。详情请参考DefineSprite。
• PlaceObject 在显示列表中添加一个角色
• PlaceObject2 在指定的深度添加或修改角色
• RemoveObject 从显示列表移除指定的角色
• RemoveObject2 从指定的深度移除角色
• ShowFrame 将要显示的内容呈递给显示列表
注意:PlaceObject和RemoveObject是较旧的标签,已经很少在SWF 3以及后面的版本中使用了。
下表说明了显示过程,首先定义三个对象,一个形状(shape),一个文本对象(text object)和一个精灵(sprite)。这些对象被赋予ID并储存在字典中。角色1(形状渐变)放在深度1,当这一帧出现时它将被其他对象所掩盖。角色2(文本对象)被放置了两次,一次在深度2,一次在深度4。角色3(精灵)在深度3。

1 comment:

这个太好了,gt妹妹
by: devilchild (contact) - 15 Jun '06 - 09:59



:

:
:



Meta Information:

Title: 【翻译】SWF结构规范第四章:显示列表(一)
Date posted: 14 Jun '06 - 17:38
Filed under: actionscript
Wordcount: 31 words
Good Karma: 170 (vote)
Bad Karma: 93 (vote)
Next entry:  【翻译】SWF结构规范第四章:显示列表(二)
Previous entry:  【翻译】抽象工厂在as2.0中的运用

Frontpage