在网页里制作三维实时动画和网页三维游戏,从很多年前的shockwave时代(那种普及率很难称作一个时代)就开始了。如今网页三维引擎虽不算多如牛 毛,也算多到眼花的。具体为什么这项技术到现在还没有普及起来,在下可能又能写一篇文章了,所以这里就不多讲。先提一下这些的原因是想让我们不要觉得 flash3d是很超前,或者很高难度不可攀的东西。
在下从shockwave时代就对网页三维引擎颇有兴趣,现在对flash3d也有少许了解。在下也知道国内flash3d站,中文高端资料也是非常有限的,国内的研发者就更是屈指可数。
我们Flab3D.com就是为了让更多国内flash3d爱好者了解,上手,并希望能加入flash3d制作和开发的行列。因此我们的教程更注意对基本原理的讲解,并非简单描述如何操作。
如果你的梦想和我们一样是建造在网页上的三维世界,那么请和我们一起加油。
我们都会以flash中的使用为初级教程的软件,flex暂不多提,flex的使用者解决这类简单的安装问题应该是不成问题的)
原理解释: 窗口:用户观看的窗口,简单的可以想成就是flash里面的画布大小。窗口也可以理解成渲染的尺寸,否则画面就无限大了 下面这幅图虽然并不算准确的表述,但希望能帮助我们理解: 当然只有上面的东西,我们虽然有了个正确的基本pv3d设置。但还是什么都看不到,因为场景里什么都没有嘛,呵呵。 我们这个例子里,会向场景加入一个小球,然后给这个小球贴上一个自己做的位图贴图。(如果没有三维经验的朋友,可以把小球想成是一个木头架子组成的灯笼框,贴图是上面糊的画纸=___=有时候我有没有必要解释到这种地步OTL…),最后让这个小球自己慢慢转动。 请下载我们为您提供的 pv3d傻瓜包 (08-10)。 新手操作流程: 新建一个主包(就是一个文件包),把pv3d解压后的所有包放到这个包里面,我们就可以开始工作了。 打开flash CS3(或cs4)新建一个fla文件,以“test01.fla”为文件名保存在主包里,和刚才解压的pv3d的包在同一个包中。 新建一个ActionScript文件,以保“test01.as”为文件名保存,里面写: private var viewport:Viewport3D=new Viewport3D(400,400); //初始化窗口 addChild(viewport)//记得把窗口加入的stage里,别忘了哟,所以要写上这句。 renderer.renderScene(scene,camera,viewport); //这句就可以渲染一张图勒。 但是我们肯定不想就渲染一张图就完毕,我们想能动起来,所以需要能1秒钟渲染30张左右。 addEventListener(Event.ENTER_FRAME,process); //所以加入一个enterframe 现在我们试着放一个球到场景里去。先在主包里面放一张任意的jpg图片(随便什么jpg图都可以,大小最好修改成128*128,256*256,1024*1024这种),命名为‘map.jpg’。 private var sphere:Sphere= new Sphere(new BitmapFileMaterial('map.jpg'),400,12,12); 为了让我们的程序可以执行,我们必须在开始导入这些类。 这时我们运行程序,就能看到一个我们可爱的小球(没有动的)了。 为了不至于错觉图像定住了(实际上没有定住,只是场景里面没有东西在动而已,渲染器仍然在以每秒30张图的速度刷新着一个相同位置的小球而已。),所以我们在enterframe的方法里加入一句。 ctrl+enter,运行发动! 兴奋吧,去泡杯茶小小的庆祝一下吧~站起来跳两下也可,身边有伙伴也可拥抱(别太久=_=)。 DDM君 Flash3d研究所推荐的Pv3d傻瓜包下载
|