会员注册 | 登录 | 微信快捷登录 支付宝快捷登录 QQ登录 微博登录 | 帮助中心 人人文库renrendoc.com美如初恋!
站内搜索 百度文库

热门搜索: 直缝焊接机 矿井提升机 循环球式转向器图纸 机器人手爪发展史 管道机器人dwg 动平衡试验台设计

基于java3D的模型动作引擎毕业论文.doc基于java3D的模型动作引擎毕业论文.doc -- 5 元

宽屏显示 收藏 分享

资源预览需要最新版本的Flash Player支持。
您尚未安装或版本过低,建议您

1基于java3D的模型动作引擎中文摘要本工程着重对既有三维模型的复用,和对模型动画的制作。现在业界很少有基于java3D的动画引擎,本工程也是对java3d在动画方面的创新。工程围绕对3DMax文件格式的解析,动画帧的设计,动画文件的存储,动画的驱动,以及用户界面的设计做了详尽的说明,并提供了可运行的范例代码。在工程的尾声部分,着重说明了代码的重构过程和调试方式。使代码更加精简,易读。英文摘要Thisproject,toalreadyhavingthereplyingandusingofathreedimensionalmodelemphatically,andthemakingofthemodelanimation.Seldomthereisaengineofanimationbasedonjava3Dintheindustrynow,thisprojectisinnovationinanimationtojava3dtoo.Theprojectcentresontheanalysisof3DMaxfilelayout,thedesignoftheanimationframe,thememoryoftheanimationfilecorrectly,driveofanimation,anddesign,userofinterfacemakeexhaustiveexplanation,haveofferedtheexamplecodethatcanbeoperated.Insomeofcodaoftheproject,havestatedconstructingthecourseanddebuggingthewayagainofthecodeemphatically.Makethecodesimplifiedfurther,legible.关键词Java3D、GUI、Swing、GUI、重构1、概述1.1需求分析在3D愈来愈普及的情况下,了解并掌握相关知识已经成为从业者的当务之急。1.2开发工具选择目前开发三维图形有几种工具windows上的directx,支持多平台的openGL。论资源,openGL和directx都有很多的可参考编程实例可以参考。其中directx由于有比较快的更新速度,集成程度比openGL高。OpenGL由于是硬件接口,比directx的硬件映射模式速度略高。据我观察,directx的普及率比openGL略高。可以说两者不相伯仲,可以任选其一。我选择用java开发,因为有一个系统的3D程序设计结构有利于以后向其他语言转变。而java的系统化正是他的优点。1.3可行性分析现在用java开发3d游戏有两种途径/1java3D.这里面还分基于openGL和基于directx两种。/2jogl。也就是javaopenGL的缩写java3d的结构继承了java的严谨。条理性趋近于完美。其结构如下VirtualUniverse||Locale|/\BGBG2||TGTG|\ShapeViewPlatformViewCanvas3DScreen3D|\/\ApGeViewerEnviormentBGBranchGroup分支节点TGTransformGroup变换节点,可以用变换矩阵控制ApAppearance物体外观数据GeGeometry物体形状数据效率问题java3D最大的问题就在于效率,实现同样的东西,FPS远不及用VCD3D实现的高。这就是jogl产生的原因。缺陷动态加载就很成问题。1.4工程定位及概念设计我选择制作模型动画引擎,并选择最著名的模型制作软件3DMax制作出来的模型(.3ds)作为我的引擎导入模型格式。这不仅因为3ds模型逼真,而且这种模型在网上有很多共享资源可以使用。2、基于java的模型动作引擎的选定和系统总体设计有人说种纯oo的语言java,c在程序设计上强制oo,不仅仅带来了条理性和可靠性,在可重用方面更是其他语言不能比拟的。2.1工程的划分主模块/驱动模块AnimationEditor.java功能一切模型和视角动作的驱动(用主循环实现),程序入口(main方法和setup方法),GUI部分及响应(Swing类库和Listener的使用)。IO模块ModelLoader.java,FrameIO.java,LocalDAO.java功能负责模型的导入(3ds格式的解析,形成java3D格式模型),动画的导入和导出(采用对象导入导出技术,对动作组进行反射压栈),本地数据库访问。对象模块Aframe.java,MoveMatrix.java,ModelStruc.java功能帧结构,动画结构,模型结构功能模块FrameAccesser.java,FramePlayer.java,ModelCutter.java,功能帧结构访问代理类,动画播放类(插值器),模型切分类(反射机制实现)辅助模块Axis.java,Land.java,srcNameCheck.java功能坐标轴,三维地面参考,源路径检测。控制模块GameControl.java,PickHighLightBehavior.java功能编辑器视图控制,被选择部分模型高亮显示。资源模块.3ds,.ani功能模型资源,动画资源2.2结构流程图32.3数据存储方式选择由于采用3dmax的.3ds作为导入资源,所以用平面文件存储数据比用数据库更具有灵活性和可扩展性。用户可以方便的通过复制粘贴,或者指定路径来编辑指定模型的动画。每个模型的动画被存为单独的文件,便于传播和拷贝。2.4设计环境采用IDEEclipse环境WindowsXPprofessionaledition,javasdk1.4.1.2,java3d1_3_1windowsi586openglsdk3、数据结构分析与设计3.1导入数据结构分析属于IO模块3ds文件数据是由块(chunks)组成的。块描述了紧接着的数据的信息,和数据的组成,以及数据块的ID和下一个块的位置。如果有不明数据块,就忽略他。下一个块的指针在这个不明块的开始就有说明。3ds文件的二进制信息使用非常特殊的方式写的,也就是汇编方式,与正常的高位和地位正好相反。比如4A5C,那么5c是高位,4A是地位。如果一个长整数为4A5C3B8F,那么5C4A是低位,8F3B是高位。对于数据块,被定义为startendsizename012ChunkID254PointertonextchunkrelativetotheplacewhereChunkIDis,inotherwordsthelengthofthechunk块有一个用ID表明的层次关系。3DS文件的主块ID是4D4DH。这个块永远是文件的第一个块。4下面的表就是块树的层次关系,不同的块ID就表明了他们的属性和位置。每一个块都被起了一个名字,这样是为了更便于将其放在源代码中。MAIN3DS0x4D4D|EDIT3DS0x3D3D|||EDIT_MATERIAL0xAFFF|||.//详见3Dmax文档.|KEYF3DS0xB000|KEYF_UNKNWN010xB00A.............0x7001viewport,sameaseditor3.2模型结构拆分(属于功能模块)在导入3ds模型的时候形成了以整体模型为根节点的BranchGroup,其模型的树状结构如下TG整体模型|BG|\\BGBG.....|\TGTG|\ShapeShape......这些是模型最小分割|\GeoAp在java树中,我们可以用父节点枚举子节点。利用反射原理,将整个的模型分割成最小的块。下面的ModelCutter类用来分割模型。publicclassModelCutter3.3帧结构设计(属于对象模块)对于模型的每一个最小细分,一个帧应该记录这个最小细分的三维位置向量,三维旋转量,和三维比例。除了这些,帧还应该有自己在整个动画里面的序号,指向前一个帧和后一个帧的指针。作为辅助,应该加上toString函数,这样随时可以获取当前帧的信息。最后提供了一个方便的构造函数,可以便捷的将输入帧作为上一帧。publicclassAFrameimplementsSerializable3.4动画结构.ani的设计(IO模块)有两个问题在这里需要讨论第一个是保存什么的讨论,在这里有两个选择,保存每个帧,或者保存关键帧。前
编号:201311181527511171    大小:589.00KB    格式:DOC    上传时间:2013-11-18
  【编辑】
5
关 键 词:
专业文献 学术论文 精品文档 基于java
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
0条评论

还可以输入200字符

暂无评论,赶快抢占沙发吧。

当前资源信息

4.0
 
(2人评价)
浏览:28次
网游小王子上传于2013-11-18

官方联系方式

客服手机:13961746681   
2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   

相关资源

相关资源

相关搜索

专业文献   学术论文   精品文档   基于java  
关于我们 - 网站声明 - 网站地图 - 友情链接 - 网站客服客服 - 联系我们
copyright@ 2015-2017 人人文库网网站版权所有
苏ICP备12009002号-5