2011-05-31 77 views
2

我必须使用Flash CS3,因此我无法使用属性rotationX,roationY和rotationZ。AS3:使用Matrix模拟RotationX

我有一个movieclip,看起来像这样。现在是平的,没有3D旋转或剪切

enter image description here

但我想的是,这个影片剪辑具有的rotationX,或者说,它是透视有点像这样:

enter image description here

正如我所说,我不能使用rotationX,所以我一直在玩Matrix。 但我不明白。

这里是我尝试做

myMC.transform.matrix =新 矩阵(1,0.15,0.35,1,0,0);

这是结果

enter image description here

你能帮我拿到矩阵权,或有另一种方式?

谢谢 文森特

回答

0

让你的生活更轻松,只要下载一个3D引擎为Flash 9:

http://away3d.com/downloads

如果不是这样,你可以修改你CS3安装,以产生针对Flash SWF文件10+

+0

谢谢,但不是过度杀伤?使用整个3D引擎只是为了增加一些视角? – Vinzcent 2011-05-31 09:31:11

+0

大声笑是啊这是矫枉过正。但你必须为自己权衡什么是更多的矫枉过正。花费时间和研究试图找出一种合适的方法,在绝对不支持任何此类事物的虚拟机级别虚拟3D转换,或者只是使用现有的3D引擎并使用它来完成相同的工作。请注意,3D 3D LITE是一款非常简洁的引擎版本,只需进行基本的3D转换和一些模型加载支持。 – 2011-05-31 09:43:09

0

对不起,和的rotationX是的rotationY不仿射变换(他们显然不保留线之间的平行),所以它们不能在二维空间的矩阵乘法来表示。然而,它在3D空间仿射(其中平行线的不保留是2D投影的明显效果,而不是旋转)

+0

谢谢,任何其他的解决方案来归档呢? – Vinzcent 2011-05-31 07:37:57

0

我相信你要做的是得到一个正确的仿射变换矩阵。

enter image description here

FYR(变换矩阵)http://en.wikipedia.org/wiki/Transformation_matrix

编辑

有关3D详细信息变换和它们的基质, 这里,看是否能适用。

http://www.cosc.brocku.ca/Offerings/3P98/course/lectures/2d_3d_xforms/

编辑2

博客中关于3D变换CS3和CS4。

3d旋转简单的方法:购买闪光灯 CS4 uggh!我仍然使用CS3,而我的Flash软件只有 。我的插画师, photoshop,premiere和aftereffects 仍处于CS2 的低层次,由于经济原因,我被卡住了 我的 过时的软件配置。但是,如果您不在我的船上 或与我的船相同的海域上,请考虑购买最新,最好的CS4闪光灯,以使闪光显示对象固有的3D操作 。 是的,内在的,内置的,容易。

在Flash CS3和下方,显示 对象(即子画面或动画片段)仅 识别一种旋转属性 (旋转:表示的 DisplayObject实例的旋转,在 度,从其原始 取向,这通常是 左上角,或者0,0)。这个 属性仅旋转Flash阶段的 2D平面空间中的对象。到 使3D在这个闪光灯工作,必须 与数学“假”。很多数学, 点,线,填充,触发,数组, 和有时矩阵。 Yippee kayae!

在Flash CS4和上述(作为写 没有上述的),一个显示对象 (即子画面或动画片段)识别 四(4)旋转属性。圣洁 牛!是的,四个旋转属性:

旋转:与CS3中相同。 2D旋转。 rotationX:围绕舞台的X轴,即垂直的 翻转的旋转。 rotationY:将其旋转到舞台的Y轴 ,即 水平翻转。 rotationZ:旋转, 婴儿旋转到 阶段的Z轴。就我而言,Z轴周围的旋转 与 旋转相同(除非由于某些原因,Z轴不穿过对象的 定向点)。 [http://actionscription.wordpress.com/2009/03/12/3d-rotation/]

+0

噢,你只想在X轴上旋转或仅在Y轴上旋转? 对不起,我读得太快了 – 2011-05-31 07:41:53

+0

是的,rotationX是我想要做的,但是因为我使用的是Flash CS3,所以我必须找到其他相同的东西。 – Vinzcent 2011-05-31 07:46:07