纳金网

标题: JAVA3D学习系列(二) [打印本页]

作者: 她。    时间: 2012-7-5 09:56
标题: JAVA3D学习系列(二)
一。JAVA3D的作用:



JAVA3D可用在三维动画、三维游戏、机械CAD等领域。



1.可以用来编写三维形体,但和VRML不同,JAVA3D没有基本形体,不过我们可以利用

JAVA3D所带的UTILITY生成一些基本形体如立方体、球、圆锥等,我们也可以直接调用

一些软件如ALIAS、LIGHTWARE、3DS MAX生成的形体,也可以直接调用VRML2.0生成的

形体。



2.可以和VRML一样,使形体带有颜色、贴图。

字串1



3.可以产生形体的运动、变化,动态地改变观测点的位置及视角。



4.可以具有交互作用,如点击形体时会使程序发出一个信号从而产生一定的变化。



5.可以充分利用JAVA语言的强大功能,编写出复杂的三维应用程序。



6.JAVA3D具有VRML所没有的形体碰撞检查功能(这也是本人目前中意JAVA3D的原因)。



(作为一个高级的三维图形编程API,JAVA3D给我们带来了极大的方便,它的作用

可以说,几乎包含了VRML2.0所提供的所有功能。)



二。OPENGL、VRML、DIRECT3D、JAVA3D的比较

由于OPENGL的跨平台特性,许多人利用OPENGL编写三维应用程序,不过对于一个非 字串9



计算专业的人员来说,利用OPENGL编写出复杂的三维应用程序是比较困难的,且不说C

(C++)语言的掌握需要花费大量时间精力,当我们需要处理复杂问题的时候,我们不得

不自己完成大量非常繁琐的工作。当然,对于编程高手来说,OPENGL是他们发挥才能的

非常好的工具。

VRML2.0(VRML97)自1997年12月正式成为国际标准之后,在网络上得到了广泛的应

用,编写VRML程序非常方法(VRML语言可以说比BASIC、JAVASCRIPT等语言还要简

单),同时可以编写三维动画片、三维游戏、用于计算机辅助教学,因而其应用前景非

常广阔尤其适合在中国推广应用。不过由于VRML语言功能目前还不是很强(如目前没有

形体之间的碰撞检查功能),与JAVA语言等其它高级语言的连接较难掌握,因而失去了

一些计算机高手的宠爱。但我们认为,我们可以让大学里的文理科学生利用VRML编写多媒

体应用程序,让学生很快地对编写程序感兴趣,从而使国内的计算机水平得到提高。

DIRECT3D是Microsoft公司推出的三维图形编程API,它主要应用于三维游戏的编程,

目前相关的学习资料难于获得,由于它一般需要VC等编程工具进行编程,需要编程人员 字串9



具有较高的C++等高级语言的编程功底,因而难以普及。

JAVA3D是建立在JAVA2(JAVA1.2)基础之上的,JAVA语言的简单性使JAVA3D的推广

有了可能。OPENGL和JAVA3D之间的比较可以看成汇编语言与C语言之间的比较,一个是低

级的,一个是高级的(也许这样比较不太恰当)。JAVA3D给我们编写三维应用程序提供

了一个非常完善的API,它可以帮助我们:

生成简单或复杂的形体(也可以直接调用现有的三维形体)

使形体具有颜色、透明效果、贴图。

可以在三维环境中生成灯光、移动灯光。

可以具有行为(Behavior)的处理判断能力(键盘、鼠标、定时等)

可以生成雾、背景、声音等。

可以使形体变形、移动、生成三维动画。

可以编写非常复杂的应用程序,用于各种领域如VR。

字串8



三。如何获得JAVA3D运行环境

从 http://java.sun.com/products/java-media/3D/我们可以获得最新的

JAVA3D运行环境,目前最新的版本是1.1.1,在安装之前需要安装jdk1.2。




欢迎光临 纳金网 (http://rs.narkii.com/club/) Powered by Discuz! X2.5