Flash3D技术的实现与应用(阅读).ppt

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Flash3D技术的实现与应用(阅读)

Flash 3D技术的实现与应用 Flash 3d引擎开发笔记 1.3d实现原理 不同于DirectX 3D,Open GL, flash并没有3D的API,如果要实现3D的东西的话,就要借助于计算机图形的知识,自己写3D的引擎,并转换成2D,再由flash绘制。 三维坐标,二维坐标,与flash的坐标比较 透视原理 为此我们先画一个透视图,B点是观察者的眼睛,物体位于三维空间的A点,它的坐标是(x,y,z),将该点的坐标转换为二维坐标,实际上就是点A在平面(电视屏幕)上的投影点C的坐标,其中CF的长就是该点的X坐标值,CE是该点的Y的坐标值,假设观察点到屏幕的距离BO=d,然后根据三角形相似原理,对应边成比例可以得到d/(d+z)=x1/x,d/(d+z)=y1/y,其中(x1,y1)就是转换后的坐标,假设d/(d+z)=ratio,所以x1=x*ratio,y1=y*ratio. (细节略) 2.已经实现的功能 引擎正在开发阶段,可以实现相机控制(焦距,所对位置,距离),3D mesh控制(位置,大小,旋转方向),3D场景在flash中的位置(位置)。 在图形方面,不但可以纯色绘图,还可以给3D物体贴图,并判断是否可以见,并可以实现倒影的渐变效果和即时刷新。 光源的制作,垃圾回收功能目前正在制作中。 3.引擎的结构 classes.GL.Number3D Point3D Points Cube Plane Triangle Etc… Camera Scene Object的结构 classes.GL.FlashGL IsVisibleBetween 判断是否可见 TransTo2D 转换3D坐标到2D DrawFilledPoints 绘制多边形纯色填充 DrawMapPionts 绘制多边形贴图填充 DrawMapPlane 绘制平面贴图填充 DrawRefPlane 绘制平面倒影贴图填充 DrawShadowCube 绘制多边形阴影填充 DrawLineCircle DrawMap classes.BMP.Skew API的结构 4.所能实现的功能 随着引擎功能的增强与改进,可以创造出更复杂的3D物体,可以用于展品展示,信息展示,图象或视频浏览,也可以把传统2D 项目3D化,可以取得更好的视觉冲击力。 实时flash 3D引擎相对于传统渲染动画的方法不但体积小,而且可以重复使用,一次开发永久受益。配合改进的XML结构解析以及其他技术,完全可以把复杂的多媒体项目细分到一张图,几行文字,使修改更新内容变得非常简单、高效,我们通常把这种做法叫作面向对象设计。 这种3D引擎,及面向对象的设计方法达到了世界先进水平,许多世界顶级项目都是这种开发思想。 面向对象设计的3D flash所带来的改进 思路清晰,高效快速的开发流程。 效果重复使用、提前开发,绚丽惊人的3D效果拿来就用,不再有资源浪费。 程序根据XML结构生成内容,修改变得前所未有地容易,加一行字,加一张图,非程序人员几分钟就能搞定大规模修改。 项目需求 flash脚本 3D引擎 图形 视频 及其他素材 XML 脚本 成品

文档评论(0)

kabudou + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档