前面的几章关于算法等一些东西,暂时没有看,直接从第七章开始

这一章主要讲了一些基于flash cs4 的3d基础知识,图形方面的知识感觉比较简单,列一下知识点,算是这一天总结。

1.左右手坐标系,弧度和角度

2.skills:同样的代码不同编译器可能会产生不同的效果,或者是因为浏览器等产生舞台大小不同造成显示效果不同;

   方法1:设置固定舞台大小:[SWF(backgroundColor=oxffffff, width=800, height=600)]

   方法2:设置“居中”:root.transform.perspectiveProjection.projectionCenter=new Point(stage.stageWidth/2, stage.stageHeight/2);

3.3D Positioning:(目前来看)flash里面的平移直接用调用对象属性运算就可以了,暂时没有用到矩阵,不过想想也是,显示对象一般都包含在Sprite那么      只需要改变容器的相应属性就可以了,不过总是感觉怪怪的,线性问题是怎么解决的...看完这本书再看看是不是自己写一个 对于flash10中的matrix3D还缺    乏更深认识.

4.Depth sorting:就是将“显示元素”放入数组排序,然后按z的大小排序

5.3D containers:sprite容器 无需多写

6.3D Rotation:也是直接调用相关的 RotationX,RotationY,RotationZ 来转动,同样是没有用矩阵。不过这里的例子已经比较有意思,每次对                Sprite(包含多个shape),每对sprite的z调整都要从新对z排序,用到了前面的depth sorting。特别的将第二个例子的代码粘出来,因为貌似源代码参数    有些小问题。把半径调小了一些,还有初始化的RotationY值的计算也调整了一下,这样就是书中的效果了。


Code

 

7.Field of View and Focal Length:两个属性来调节depth of field,Field of View 可以看成是一个视觉范围的角度(0-180度),另一个Focal Length可    以理解为视觉最大长度,他们之间是相互联系的,不过一般只设置一个属性就好了 。


 


8.Screen and 3D Coordinates:坐标系转换,一个是 用local3DToGlobal,另一个是掉过来,参数是Vector3D

9.Pointing at Something:特别的有一个PointAt 函数囧......作者也不太确定这东西干啥的,他说也许可以用在瞄准射击之类的应用上面吧。

ok 完事了,有时间一定要看看 geom 包

sleep。。。。。。

 

posted on 2009-02-28 00:25  sungo  阅读(333)  评论(0编辑  收藏  举报