WEB开发网
开发学院图形图像Flash Flash与3D编程探秘(五)- 摄像机旋转和移动 阅读

Flash与3D编程探秘(五)- 摄像机旋转和移动

 2008-11-12 11:51:23 来源:WEB开发网   
核心提示:本文示例源代码或素材下载 上一篇我们讨论了关于旋转摄像机的一些知识,在这篇文章中我们将讲解如何定点旋转摄像机,Flash与3D编程探秘(五)- 摄像机旋转和移动,以及把移动和旋转摄像机结合在一起,当我们只运用旋转摄像机时,使用三角函数我们就可以得到小P的x和z,我们同样使用随机数产生它的y, 在屏幕上我们看到物

本文示例源代码或素材下载

上一篇我们讨论了关于旋转摄像机的一些知识,在这篇文章中我们将讲解如何定点旋转摄像机,以及把移动和旋转摄像机结合在一起。当我们只运用旋转摄像机时, 在屏幕上我们看到物体围绕着摄像机旋转,动画并不是那么的"3D",不过这个是我们的必经之路,等你完全的明白了旋转这个概念后,我们添加上摄像机在3D 空间移动,那样你就不会觉得乏味了。首先我们来看一个定点旋转摄像机的例子当作热身。

这个例子,我们还是使用我们的小P,不过是很多的小P,这样使我们的场景看起来更加的有层次感。运行我们的程序(效果如下),所有的物体都在围绕摄像机旋转,我想你会有摄像机在不停的旋转的错觉(或者没有...)。

定点旋转摄像机

动画制作步骤:

1. 一开始还是一些老步骤,设定原点,建立一个舞台,还有定义我们的摄像机,这些都是前几篇所讨论过的,就不再过多解释了。

//sameasusual
varorigin=newObject();
origin.x=stage.stageWidth/2;
origin.y=stage.stageHeight/2;
origin.z=0;
varscene=newSprite();
scene.x=origin.x;
scene.y=origin.y;
this.addChild(scene);
varcamera=newObject();
camera.x=0;
camera.y=0;
camera.z=0;
camera.panning=0;
varfocal_length=300;

2. 下面定义一些常量,比如物体的总数量,PI和物体z间距。

//constants
varMAX_OBJ=100;
varPI=3.1415926535897932384626433832795;
varDISTANCE_Z=20;        //thedistancetoyourcamera

3. 下面是初始化所有的物体,我们运用随机数产生小P所在的角度(对于摄像机),递增小P所在点到摄像机的距离(3D空间的),使用三角函数我们就可以得到小P的x和z,我们同样使用随机数产生它的y,最后把它添加到舞台上。

1 2 3 4 5 6  下一页

Tags:Flash 编程 探秘

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接