付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
java3d的三维形体生成技术
0教育市场的d游戏现状近年来,3d硬件绘画技术的进步导致实时绘画的图像变得越来越详细,3d游戏变得更加多样化,最近的世界。因此,3d游戏逐渐取代了2d游戏,并成为游戏产业的主流。即使是网络游戏,也逐渐转向3d。虽然开发3D游戏存在着诸如技术更新快、程序人员与美工的配合要求高、各厂商所生产的3D硬件规格和特性不同、失败率高等问题,但不可否认,3D游戏己是大势所趋。目前Java3D在游戏开发领域已经占到了重要的地位,可应用在三维动画、三维游戏、机械CAD等多个领域,在许多情况下已成为游戏开发者的首选。Java3D也是目前在Internet上实现三维动画的主要手段之一。Java3D是建立在Java2基础之上的,Java语言的简单性使Java3D的推广有了可能。Java3D给我们编写三维应用程序提供了一个非常完善的API,它可以帮助我们生成简单或复杂的形体。因此,利用Java3D设计一个具有互动性的坦克射击游戏,对于三维技术的探索和研究,具有实际意义。1web应用程序结构设计Java3D是由SUN公司在1998年年底正式推出的交互式三维图形应用编程接口。它的思想来源于现存的各种图形API及多种新技术,它包含了实现三维交互真实感图形的基本类和接口,用于实现三维动画的生成及多媒体程序和交互程序的编写,是Java语言在三维领域的扩展。利用Java3D提供的API,可以编写出基于网页的三维动画、各种计算机辅助教学软件和三维游戏等等。Java3D的这种体系结构既可以使其开发的程序“到处运行”,又使其能充分利用系统的三维特性。Java3D的数据结构采用SceneGraphsStructure,这种灵活的树状结构与显示列表多少有些相似之处,但更具有健壮性。Java3D的场景图由Java3D在计算机上显示出三维效果,显示内存不断接受Java3D运行的最新结果并直接显示出来,从而产生三维动画效果。2系统的设计和分析2.1两种方式生成属于三维形体的点、线、面Java3D编程过程中,三维形体是重要的处理对象。可以用两种方式生成Java3D所需要的三维形体:一是利用Java3D提供的用于编写点、线、面的类生成点、线、面对象;二是通过调用外部其他格式的三维图形文件,生成复杂的三维形体对象。基于多个属性的恶意行为Java3D的点、线、面时,需要给出顶点坐标数组、顶点坐标对应的颜色数组等内容。输入这些内容需要用到GeometryArray提供的多个方法,因为所有的点、线、面类都是GeometryArray的子类或孙类,因而都继承了它所有的方法。Java3D程序中的面有多个属性,可通过PolygonAttributes对象设定具体的属性。Java3D可以通过变换生成三角形和四边形的面,Tiangle为三角形面,Quad为四边形面。vcds-branch体系组合Java3D应用程序中,一般都拥有多个三维形体,需要对其进行合理的组合,这样才能对指定的形体进行几何变换,对指定的形体进行某种操作,生成所需要的交互式三维应用程序或三维动画。Java3D为此提供了多个用于形体组合的对象。组合各种对象所用的是Group及其子孙类。Java3D场景图的底部为VirtualUniverse。每一个场景图只能有一个VirtuaUniverse,上面为Locale。Group类型对象只能有一个父类,对于BranchGroup对象来说是Locale。而其他的Group类型的对象,则可以将其他Group类型的对象做为父类。如TransformGroup对象可以将Group对象做为父类,也可以将另一个TransformGroup对象做为父类。Group类型的对象可以有任意多的子类。2.2系数的文件编码Java通过一系列的监听器(listener)方法提供一种与用户交互的方式。向Java输入想要监听键盘输入事件的指令,Java会把键盘事件发送给监听器方法,此时,可以检查按码来判断是哪个键被按下或者释放。Java通知程序某一个按键被按下的方法是通过程序所使用的接口实现的。KeyListener接口监听键盘事件,并且把事件发送给程序中所实现的回调方法(callbackmethod)。这些方法叫做keyPressed、keyRelesed和keyTyped,他们都只有一个名为KeyEvent的参数。编写一个使用KeyListener的程序时,需要使用implements关键字来修改程序的类定义:publicclassKeyboardTestextendsAppletimplementsKeyListener。2.3主体机动炮点识别本游戏中有坦克与坦克之间的碰撞检测,坦克与障碍物之间的碰撞检测,炮弹与坦克之间的碰撞检测,炮弹与障碍物之间的碰撞检测。当坦克碰到障碍物或其他坦克时将不能再继续往前移动;当炮弹打中障碍物时炮弹爆炸,障碍物不损;当主体坦克炮弹打中敌对坦克时,敌对坦克爆炸且ENEMY数量减少1格;当敌对坦克炮弹打中主体坦克时,主体坦克ENERGY减少1格。当主体坦克发出子弹打中敌对坦克或障碍物,发生碰撞冲突时,播放声音效果collide.au。其主要代码为:若打中的是敌对坦克,敌对坦克发生爆炸,还会播放声音效果explode.au。其主要代码为:当主体坦克与敌对坦克或障碍物发生碰撞冲突时,播放声音效果vcollide.au。其主要代码为:3系统组成
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 蜂巢图教学课件
- 粉尘控制技术课件
- 妇产科成品课件
- 分窗口打开课件
- 9-10-Didehydroeffususol-A-生命科学试剂-MCE
- 6ECA-生命科学试剂-MCE
- 粉尘防爆检查重点课件
- 防触电教学课件
- 防错案例课件
- 2026-2031年中国基金投资行业市场调查研究及发展前景预测报告
- 关于开展2027年“安全生产月”活动的通知
- 建筑工程资料员考试题库及答案
- (一模)2026年11月杭州市高三年级教学质量检测英语试题(含答案)
- 大学美育科技之美
- 19 大雁归来 教学课件七年级上册
- 水利工程质量缺陷处置细则
- AI智能体概念、技术与应用 全套课件 第1-8章 AI智能体概述-AI智能体开发实战
- 骨科患者的引流管护理
- 2026 新版 移动营业窗口服务人员试题库 含答案
- (2025年)福建辅导员笔试真题及答案
- 医院消毒供应业务外包管理制度
评论
0/150
提交评论