`

[转]Flash Player 10' s new 3D effects(一)

阅读更多

 http://sjkgxf7191.iteye.com/blog/513408

 

目录:

 

Flash Player 10' s new 3D effects(一)

Flash Player 10' s new 3D effects(二)

Flash Player 10' s new 3D effects(三)


参考资料:

 

Adobe ActionScript 3.0 Programming 第二十三章 在三维环境中工作

AdvancED_ActionScript 3.0 第七章 3D IN FLASH 10

 

3D基础知识

 

ActionScript中的3D简介

 

如果将某个显示对象的Z属性显示设置为数值 ,则该对象会自动创建一个3D转换矩阵 。您可以通过更改此矩阵来修改该对象的3D转换设置

 

重要术语和概念

 

  • 透视 :在 2D 平面上将平行线表示成聚合于一个消失点,从而获得深度和距离的视觉效果
  • 投影:为多维对象生成 2D 图像; 3D 投影将 3D 点映射到 2D 平面
  • 旋转:通过按圆周运动的方向移动对象内的每个点来更改对象的方向(通常也会更改其位置)
  • 转换:通过平移、旋转、缩放、倾斜或这些操作的组合来更改 3D 点或点集
  • 平移:通过将对象内的每个点往同一方向移动相同的距离来更改对象的位置
  • 消失点 :在用线性透视法表示时,逐渐远离的平行线看似相交的点
    Java代码  收藏代码
    1. // 设置显示元素的中心为消失点就可以像下面这样:  
    2. .transform .perspectiveProjection .projectionCenter =new Point (stage.stageWidth / 2, stage.stageHeight / 2);  
     
  • 矢量 :3D 矢量使用笛卡尔坐标 x、y 和 z 表示三维空间中的点或位置
  • 顶点:转角点
  • 纹理式网格 :在 3D 空间中用于定义对象的任意点
  • UV 映射 :将纹理或位图应用于 3D 表面的一种方式。UV 映射将值分配给图像上的坐标,以水平 (U) 轴和垂直 (V) 轴的百分比值形式表示。
  • T 值 :当对象靠近或远离当前视点时用于确定 3D 对象大小的缩放系数
  • 剔除 :呈现或不呈现具有特定缠绕方式的表面。通过使用剔除,您可以隐藏对当前视点不可见的表面

弧度和角度之间的转换公式:

 

Flash 10 3D 旋转的角度是度数 而不是弧度

radians = degrees * PI / 180
degrees = radians * 180 / PI

 

了解 Flash Player 和 AIR 运行时的 3D 功能

 


以下 ActionScript 类支持与 3D 相关的新功能 :

 

  1. flash.display.DisplayObject 类包含 z 属性和新的旋转和缩放属性,这些属性用于操作 3D 空间中的显示对象。DisplayObject.local3DToGlobal () 方法提供了一种将 3D 几何图形投影到 2D 平面 的简单方式 。  
    Java代码  收藏代码
    1. // 屏幕坐标系和3D坐标系:  
    2.   
    3. // 将_sprite的(200, 0, 0)的那个点三维点转换成一个二维点  
    4. // 可以知道何时一个3D物体移出屏幕,这对判断一个对象是否仍然在屏幕上是很有用的  
    5. var p:Point = _sprite.local3DToGlobal(new Vector3D(20000));  
    6.   
    7. // 二维坐标 转换成 三维坐标  
    8. var p:Vector3D = _sprite.globalToLocal3D(new Point(mouseX, mouseY));  
    9.   
    10. // pointAt 方法接收一个 Vector3D 对象作为指向的目标,这边设成了鼠标光标  
    11. _sprite.transform.matrix3D.pointAt(new Vector3D(mouseX, mouseY, 0));  
     
  2. flash.geom.Vector3D 类可用作管理 3D 点 的数据结构 。该类还支持矢量数学运算。
  3. flash.geom.Matrix3D 类支持复杂的 3D 几何转换 ,例如旋转、缩放和平移。
  4. flash.geom.PerspectiveProjection 类控制着将 3D 几何图形映射到 2D 视图 的相关参数 。

在 ActionScript 中,有两种不同的模拟 3D 图像的方式:


  1. 在 3D 空间 中排列平面对象并进行动画处理 。这种方式需要使用显示对象的 x、y 和 z 属性来对显示对象进行动画处理,或者使用 DisplayObject 类设置旋转和缩放属性。使用DisplayObject.transform.matrix3D 对象可以实现更为复杂的运动 。DisplayObject.transform.perspectiveProjection 对象可自定义显示对象在 3D 透视 中的绘制方式 。如果需要对主要包含平面的 3D 对象进行动画处理,可以使用这种方式。这种方式的例子包括 3D 图库或者 3D 空间中排列的 2D 动画对象。
  2. 从 3D 几何图形生成 2D 三角形 ,然后用纹理呈现这些三角形。要使用这种方式,必须首先定义和管理有关 3D 对象的数据,然后将这些数据转换成 要呈现的 2D 三角形 。可以将位图纹理映射到这些三角形,然后使用 Graphics.drawTriangles ()方法将三角形绘制为图形对象。这种方式的例子包括从文件中加载 3D 模型数据 并将模型呈现到屏幕上,或以三角形网格形式生成和绘制 3D 图形。

 

分享到:
评论

相关推荐

    怎样在Ubuntu Linux上安装最新的FlashPlayer 10

    在安装完成后,可以在浏览器中打开相关网站来检测当前的 FlashPlayer 版本,如果安装正确的话,应该显示版本号为 LNX 10,2,151,49。 需要注意的是,这个版本只支持 32 位机器。 Adobe 公司的 FlashPlayer 是一个...

    Flash_player_10_ActiveX插件For IE

    Flash Player 10 ActiveX 插件是针对Internet Explorer浏览器的一款关键组件,它使得用户能够在网页上顺畅地播放Flash内容,如动画、游戏、视频和交互式应用程序。这个插件在互联网的早期阶段尤其重要,因为当时许多...

    FlashPlayer10

    FlashPlayer10是一款由Adobe公司开发的用于网页浏览器的插件,它允许用户在互联网上享受丰富的交互式内容,如动态图形、动画、视频和音频。这款软件在2008年发布,是Flash Player历史上的一个重要版本,因为它引入了...

    flashplayer_10_sa SWF动画播放工具 本地播放

    标题中的“flashplayer_10_sa”指的是Adobe Flash Player的一个特定版本,主要针对SWF文件进行本地播放。SWF(Small Web Format)是Adobe Flash创作的动画或应用程序的文件格式,广泛应用于网页上的互动内容,如游戏...

    flashplayer10-3_b1_activex_030811

    "flashplayer10-3_b1_activex_030811"是Flash Player的一个特定版本,发布于2011年3月8日,主要面向Windows操作系统,因为文件名中的“activex”意味着它是一个ActiveX控件。 ActiveX是微软为Internet Explorer...

    flashplayer V10.1.85

    FlashPlayer V10.1.85 是一个重要的软件版本,它属于Adobe Flash Player系列,是互联网上广泛使用的多媒体内容播放器。这款软件的核心功能是播放含有Flash技术的交互式内容,如动画、视频、游戏以及丰富的互联网应用...

    \flashplayer10

    \flashplayer10\flashplayer10

    flash_player_10

    标题“flash_player_10”指的是Adobe Flash Player的第10版,这是一个广泛使用的网络浏览器插件,专门用于播放和创建包含动态图形、动画和多媒体内容的网页元素。Flash Player在20世纪90年代末至21世纪初非常流行,...

    flashplayer_10_ax_debug

    标题“flashplayer_10_ax_debug”指的是Adobe Flash Player的ActiveX版本的调试器,用于在2011年发布时的最新版本。Flash Player是一款广泛使用的浏览器插件,允许用户在网页上运行富互联网应用程序(RIA),播放...

    Install_Flash_Player_10_ActiveX

    5. **安装过程**:"Install Flash Player 10 ActiveX.exe"是一个可执行文件,用于在用户的计算机上安装Flash Player 10的ActiveX版本。用户需要运行这个文件,按照提示完成安装,然后重启浏览器以使插件生效。 6. *...

    Flash Player 卸载工具 Adobe Flash Player Uninstaller 34.0.0.92.rar

    Adobe Flash Player是一款曾经广泛应用于网页浏览器的多媒体播放器,它支持播放动画、视频、音频以及交互式内容。然而,随着技术的发展,特别是HTML5的普及,Flash Player的重要性逐渐下降,且由于安全问题,Adobe...

    64位浏览器的flash插件下载(flashplayer for 64-bit browser)

    在提供的压缩包文件 "flashplayer10_2_p3_64bit_activex_111710.exe" 中,我们可以看到这是一款ActiveX版本的Flash Player,适用于使用Internet Explorer或其他支持ActiveX控件的64位浏览器。文件名中的数字部分(如...

    flashplayer-34.0.0.289独立版

    标题中的“flashplayer-34.0.0.289独立版”指的是Adobe Flash Player的一个特定版本,这是Adobe公司开发的一款广泛应用于网络上的多媒体内容播放器。Flash Player的主要功能是解析和执行SWF文件,这种文件格式通常...

    FlashPlayer_flashplayer_

    本项目名为"FlashPlayer_flashplayer_",是使用经典的编程环境Delphi 7创建的一个FlashPlayer应用程序。下面我们将深入探讨这一项目的细节,包括其核心组件、开发工具以及实现过程。 Delphi 7,由Embarcadero ...

    flashplayer debug 版

    Flash Player Debug版是一款专为开发人员设计的特殊版本,它允许开发者在运行含有ActionScript代码的Flash内容时进行调试。ActionScript是Adobe Flash环境中用于创建交互式内容、动画和应用程序的主要编程语言。与...

    FlashPlayer Linux插件

    FlashPlayer是一款广泛应用于各种操作系统,包括Linux的网页多媒体播放器,尤其在早期互联网时代,它对于观看在线视频、玩Flash游戏以及使用含有Flash元素的网页应用至关重要。标题提到的"FlashPlayer Linux插件",...

    Adobe_Flash_Player一剑全清

    Adobe Flash Player是一款曾经广泛使用的多媒体软件平台,主要应用于网络浏览器,用于播放动态内容,如视频、音频、动画以及交互式应用程序。它在互联网的早期发展中起到了至关重要的作用,尤其是在在线媒体内容的...

    swf文件播放器Adobe Flash Player珍藏版Adobe Flash Player中文电脑版v10.3.181.22

    Adobe Flash Player中文电脑版是一款一种广泛使用的、专有的多媒体程序播放器。它最初由Macromedia编写,在Macromedia被Adobe收购后由Adobe继续开发并分发。Adobe Flash Player最初设计目的为播放2维向量动画,但...

Global site tag (gtag.js) - Google Analytics