一直想做3D的东西,又想结合flex这种拥有超炫界面和丰富功能的软件,浏览了网上相关文章后,决定开始入手Flex+PaperVision3D这种方式,其已经在国内流行了几年,但还算很新,前景也很好,因为flash9的普及,以及将来flash11等的流行,3D相关的各种产物将是互联网的趋势,呵呵,新手入门,不知说的对不,自己姑且这么理解。
首先,选择3D引擎。下面就简单介绍一下3D引擎以及现在常用的一些,方便我以后回顾。
3D引擎是将现实中的物质抽象为多边形或者各种曲线等表现形式,在计算机中进行相关计算并输出最终像的算法实现的集合。3D引擎就像是在计算机内建立一个“真实的世界”。3D引擎的功能有:对三维场景的数据管理,功能合理的渲染器,和外部软件的交互能力(即开发工具)。
flash3d引擎就是基于flash的3D引擎。
由于目前flash网页播放器还不支持GPU,而只能基于CPU运算,所以表现复杂图像时往往显得力不从心。目前各flash3d引擎能实时渲染面数为3000-5000个面,视电脑配置稍有些不同。但是Adobe的官方已经发话,在不久flash网页播放器将支持GPU运算,那时flash3d引擎能实时渲染面数将达到几十万面.Alternativa3D官方已经放出一段引擎游戏的视频,30万面的场景运行的非常流畅。
先记下一些很好的flash3d和3d引擎学习网站,要不每次都要百度,google,乱~。国内目前知名的几个flash3d爱好者可以找资料的地方:
Flash3d官方网站 -拥有最新最全的Flash3d引擎学习资料,是flash3d爱好者研究学习的家园。
Flash3d研究所 -代表国内flash3d最高技术团队,QQ群涵盖大部分flash3d业内高手。
天地会3d应用区 -天地会凭借其海量flash人员,此3d区拥有很多flash3d爱好者。
闪客flash3d区 -老派的flash网站中的flash3d板块,老字号。flash3d板块相对不受重视。
最后,简单记录一下流行的几种flash3d引擎吧。
papervision3d(巴西): http://www.papervision3d.org/
算是最老牌最流行的3d引擎了,as2时代就有。性能算是十分的不错(DEMO),支持ASE 和 DAE格式的3d模型,其中DAE 格式的贴图支持得非常的不错。支持的材质方式十分之多,几乎我们所能想到的方式基本都有。但是相对来说,模型却不多,而且Camera也不是很好用,没有默认的控制器。并且我发现他最近更新不快,很多功能没有陆续增加,实在是可惜。如果你需要做一个需要高性能,不需要动态灯光,碰撞检测等的项目,pv3d是不错的选择。许可:MIT MIT License。
Alternativa3D (俄罗斯): http://www.alternativaplatform.com/
一群俄罗斯人写的一个商业性的3d引擎,支持3DS格式模型,支持碰撞检测。有一个类似Counter-Strike的控制器,操作镜头是十分的方便。但是如果你希望动态的设置个别模型的位置什么的,那就惨了,性能十分的差。由于他不是开源项目,所以你是做商业应用,就得好好考虑了。许可:Alternativa3D License。
Away3d (美国): http://www.away3d.com/
这是一个功能很强大的3d引擎,支持多种(ASE, DAE, KMZ, 3DS, Md2, Obj)模型格式,支持3D动画,支持动态灯光等,不过性能貌似不怎么样,一个1024*1024的立方体都跑得够呛,不知道是不是我没有设置好。许可:Apache License2。
Sandy 3D(德国):http://www.flashsandy.org/
看上去十分象PV3D,实际上我觉得他比PV3d好用,结构更加清晰,性能也十分不错。不过我觉得他还不够成熟,所以选择时需要谨慎。许可:Mozilla Public License 1.1 。
Sharikura 3D (日本): http://temp.roxik.com/
一个日本人写的,相信大家都看过 pictaps,那是相当的不错。在MAX会上演示的ECO ZOO更是叹为观止。十分流畅的3D动画,都怀疑是否是flash做的。不过我们目前还只能看看这些漂亮的demo。
最后说说Flash Player10, 它在运算性能上确实提高了不少,并且提供了更多好用的功能。但是据我测试其3d性能,实在是十分一般,我仅仅对10张256*256的图片作rotationY递增,CUP就吃光了,而且我有ATI 256M独立显卡呢。看来FP10是好,使用需谨慎!
这些都是从各个文章中收集来的,以后忘了的话来看看。