了解 Flash Player 和 AIR 运行时的 3D 功能Flash Player 10 和更高版本,Adobe AIR 1.5 和更高版本 在 Flash Player 10 之前的 Flash Player 版本以及 Adobe AIR 1.5 之前的 Adobe AIR 版本中,显示对象有 x 和 y 两个属性,用于在 2D 平面上放置显示对象。从 Flash Player 10 和 Adobe AIR 1.5 开始,每个 ActionScript 显示对象都有一个 z 属性,利用该属性可以沿 z 轴放置显示对象,z 轴一般用于表示深度或距离。 Flash Player 10 和 Adobe AIR 1.5 引入了对 3D 效果的支持。但是显示对象本质上还是平面的。每个显示对象(例如 MovieClip 对象或 Sprite 对象)最终会呈示于二维的单一平面上。通过 3D 功能,可在三个维中放置、移动、旋转以及按其他方式转换这些平面对象,还可管理 3D 点以及将这些点转换为 2D x、y 坐标,这样您就能将 3D 对象投影到 2D 视图上。通过这些功能,可以模拟出丰富的 3D 效果。 ActionScript 使用的 3D 坐标系与其他坐标系不同。在 ActionScript 中使用 2D 坐标系时,沿 x 轴向右移动过程中,x 的值增大,而沿 y 轴向下移动过程中,y 的值增大。3D 坐标系仍遵从这一惯例,但另外添加了 z 轴,该轴的值随着远离视点而增大。 ActionScript 3D 坐标系中 x、y 和 z 三条轴的正向。
注: 请注意,Flash Player 和 AIR 始终在图层中表示 3D。也就是说,如果对象 A 在显示列表中位于对象 B 的前面,则无论这两个对象的 z 轴值为多少,Flash Player 或 AIR 都始终将 A 呈示在 B 的前面。若要解决显示列表顺序与 z 轴顺序之间的冲突,可使用 transform.getRelativeMatrix3D() 方法进行保存,然后重新对 3D 显示对象的图层排序。有关详细信息,请参阅使用 Matrix3D 对象重新排序显示。
以下 ActionScript 类支持与 3D 相关的新功能:
在 ActionScript 中,有两种不同的模拟 3D 图像的方式:
|
|