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代码
// 设置显示元素的中心为消失点就可以像下面这样
. 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 / 180degrees = radians * 180 / PI
了解Flash Player和AIR运行时的3D功能
以下ActionScript类支持与 3D相关的新功能 flash.display.DisplayObject 类包含z属性和新的旋转和缩放属性这些属性用于操作3D空间中的显示对象。DisplayObject. local3DToGlobal ()方法提供了一种将 3D几何图形投影到2D平面 的简单方式 。
Java代码
// 屏幕坐标系和3D坐标系
// 将_sprite的(200, 0, 0)的那个点三维点转换成一个二维点
// 可以知道何时一个3D物体移出屏幕这对判断一个对象是否仍然在屏幕上是很有用的var p:Point = _sprite. local3DToGlobal (new Vector3D(200, 0, 0) ) ;
// 二维坐标 转换成 三维坐标
var p:Vector3D = _sprite.globalToLocal3D(new Point(mouseX, mouseY) ) ;
// pointAt 方法接收一个 Vector3D 对象作为指向的目标这边设成了鼠标光标
_sprite. transform.matrix3D.pointAt(new Vector3D(mouseX, mouseY, 0)) ;flash.geom.Vector3D 类可用作管理3D点 的数据结构 。该类还支持矢量数学运算。flash.geom.Matrix3D 类支持复杂的3D几何转换 例如旋转、缩放和平移。flash.geom.PerspectiveProjection 类控制着将 3D几何图形映射到2D视图 的相关参数 。
在ActionScript中有两种不同的模拟3D图像的方式
在 3D空间 中排列平面对象并进行动画处理 。这种方式需要使用显示对象的x、y和z属性来对显示对象进行动画处理或者使用DisplayObject类设置旋转和缩放属性。使用DisplayObject. transform.matrix3D 对象可以实现更为复杂的运动 。DisplayObject. transform.perspectiveProjection 对象可自定义显示对象在3D透视中的绘制方式 。如果需要对主要包含平面的3D对象进行动画处理可以使用这种方式。这种方式的例子包括3D图库或者3D空间中排列的2D动画对象。
从 3D几何图形生成2D三角形 然后用纹理呈现这些三角形。要使用这种方式必须首先定义和管理有关3D对象的数据然后将这些数据转换成 要呈现的 2D三角形 。可以将位图纹理映射到这些三角形然后使用Graphics.drawTriangles ()方法将三角形绘制为图形对象。这种方式的例子包括从文件中加载3D模型数据 并将模型呈现到屏幕上或以三角形网格形式生成和绘制3D图形。
a400互联是一家成立于2020年商家,主营美国机房的产品,包括BGP线路、CN2 GIA线路的云服务器、独立服务器、高防服务器,接入线路优质,延迟低,稳定性高,额外也还有香港云服务器业务。当前,全场服务器5折,香港VPS7折,洛杉矶VPS5折,限时促销!A400互联官网:https://a400.net/优惠活动全场独服永久5折优惠(续费同价):0722香港VPS七折优惠:0711洛杉矶VPS五...
pigyun怎么样?PIGYunData成立于2019年,2021是PIGYun为用户提供稳定服务的第三年,目前商家提供香港CN2线路、韩国cn2线路、美西CUVIP-9929、GIA等线路优质VPS,基于KVM虚拟架构,商家采用魔方云平台,所有的配置都可以弹性选择,目前商家推出了七月优惠,韩国和美国所有线路都有相应的促销,六折至八折,性价比不错。点击进入:PIGYun官方网站地址PIGYUN优惠...
HostKvm是一家成立于2013年的国外主机服务商,主要提供基于KVM架构的VPS主机,可选数据中心包括日本、新加坡、韩国、美国、中国香港等多个地区机房,均为国内直连或优化线路,延迟较低,适合建站或者远程办公等。目前商家发布了夏季特别促销活动,针对香港国际/韩国机房VPS主机提供7折优惠码,其他机房全场8折,优惠后2GB内存套餐月付5.95美元起。下面分别列出几款主机套餐配置信息。套餐:韩国KR...