基于Flex的开源3D引擎.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Flex的开源3D引擎1 PaperVision3D三维引擎 1.1 PaperVision3D引擎组成 1.2 PaperVision3D各类之间关系 2 Panosalado全景图像显示引擎 2.1 Pansalado的整体构成 2.2 Panosalado引擎中的核心类 随着电脑硬件的发展,在人们对视觉感官要求越来越高,Flash作为当今一款主流的web插件,人们对它能够实现商业应用级绚丽高效三维显示也越发期待,但是简单、特定的三维显示不仅非常难以适应多变的应用场合、同时也在实现过程中浪费了大量的人力。使用ActionScript语言编制Flash播放器内置的三维引擎技术成为大家的共识,现在国内外已经有多种ActionScript三维引擎诞生,比较流行的主要有:PaperVision3D、Alternativa 3D、Away3D、Sandy 3D以及国内的NewX3D。其中以PaperVision3D最为出名,而且它在实际项目中往往有上佳的表现。 1 PaperVision3D三维引擎 PaperVision3D是一个遵循MIT(麻省理工大学)协议的开源3D引擎,使用ActionScript语言编制。PaperVision3D三维引擎自从2008年3月份开源以来经过两年的持续改进,现在已经达到了三维引擎的基本功能,拥有包括:Number3D、NumberUV、Matrix3D等各种基础数据类、3D视窗类、3D容器类、3D摄像机类、纹理材质类、各种渲染效果类、模型文件加载显示类等三维引擎模块。得益于ActionScript 3.0计算性能的改进,PaperVision3D在显示三维效果时效率有了很大的提高,已经可以满足普通三维场景的应用,特别是其支持直接导入标准的DAE和ASE三维模型文件,这意味着在创作三维场景时可以直接使用大部分专业3D工具制作出来的模型,从而可以大大提高开发效率,降低系统运算时的CPU开销。 1.1 PaperVision3D引擎组成 PaperVision3D主要由7个包组成:Core核心包,Geom包,Cameras包,Scenes包,Event包,Material包,Object包。各个包的构成如下: Core核心包 Number3D类:3D坐标系中的值类型定义; NumberUV类:UV坐标系中的值类型定义; Matrix3D类:4×3矩阵定义,矩阵算法操作定义; DisplayObject3D类:表示场景中的3D对象(也包括摄像机和其目标),并提供对象基本操作函数; DisplayObjectContainer3D类:DisplayObject3D容器的所有对象的基类,每个DisplayObjectContainer3D对象有自己子容器列表; CameraObject3D类:所有摄像机的基类; SceneObject3D类:所有场景的基类场景是放置物体的地方,它包含3D环境场景管理所有渲染的物体,它扩展了DisplayObjectContainer3D类来分配显示物体SceneObject3D是抽象基类; GeometryObject3D类:包含对象的; MaterialObject3D类:所有材质的基类。 Geom包 Vertex2D类:2D顶点数据定义; Vertex3D类:3D顶点数据定义; Mesh3D类:创建和显示由顶点和三角形组成的3D物体; Face3D类:渲染线性采样的纹理贴图的三角形,也支持颜色填充和轮廓线。 Cameras包 Camera3D类:用于创建及操作可观察目标对象周围景物的摄像机对象;FreeCamera3D类:用于创建及操作可随指定方向进行观察的活动摄像机对象。 Scenes包 Scene3D类:用于创造在同一容器中渲染三维可视环境的舞台; MovieScene3D类:用于创造在同一容器中渲染三维可视环境的舞台,支持通过Movie的方式。 Events包 FileLoadEvent类:模型文件导入时事件传递类。 Materials包 BitmapMaterial类:创建使用BitmapData对象的纹理; ColorMaterial类:创建使用单颜色的纹理; WireframeMaterial类:创建使用切线的纹理; BitmapAssetMaterial类:创建使用存放在Bitmap库中的样板的纹理; BitmapFileMaterial类:创建使用外部导入的Bitmap文件类型的纹理;MovieMaterial类:创建使用存在的MovieClip实例的贴图,该纹理可以是动画的或者透明的。MovieClip实例的当前的缩放和颜色值将会被使用,但旋转则会被舍弃; VideoStreamMaterial类:继承自MovieMaterial类,不同在于该类可

文档评论(0)

湘雅书斋 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5220142302000001

1亿VIP精品文档

相关文档