Java3D

转载 2006年06月24日 21:52:00
   Java 3D是Java语言在三维图形领域的扩展,是一组应用编程接口(API)。利用Java 3D提供的API,可以编写出基于网页的三维动画、各种计算机辅助教学软件和三维游戏等等。利用Java 3D编写的程序,只需要编程人员调用这些API进行编程,而客户端只需要使用标准的Java虚拟机就可以浏览,因此具有不需要安装插件的优点。

 

  JAVA 3D从高层次为开发者提供对三维实体的创建、操纵和着色,使开发工作变得极为简单。同时,JAVA 3D的低级API是依赖于现有的三维图形系统的,如Direct 3D、OpenGL、QuickDraw 3D和XGL等,

 

  JAVA 3D的这种体系结构既可以使其开发的程序“到处运行”,又使其能充分利用系统的三维特性。就因为JAVA 3D拥有如此的强大的三维能力,使得它在网络世界,特别是在游戏中能大展姿彩。
   Java3D历史简介

 

  Java3D API是Sun定义的用于实现3D显示的接口。3D技术是底层的显示技术,Java3D提供了基于Java的上层接口。Java3D把OpenGL和DirectX这些底层技术包装在Java接口中。这种全新的设计使3D技术变得不再繁琐并且可以加入到J2SE、J2EE的整套架构,这些特性保证了Java3D技术强大的扩展性。

 

  Java3D建立在JAVA2(JAVA1.2)基础之上,JAVA语言的简单性使JAVA3D的推广有了可能。它实现了以下三维显示能够用到的功能:

 

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

 

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

 

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

 

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

 

  生成雾、背景、声音。

 

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

 

  编写非常复杂的应用程序,用于各种领域如VR(虚拟现实)。

 

  J2SE在其标准开发包中并不提供Java3D的API,Java3D是一个独立的可选组件,可以单独下载。Java3D现在(截止到2003年5月)提供的正式版本是1.3.0,可以在 http://java.sun.com/products/java-media/3D/download.html 下载该开发工具包。

 

  Java3D 1.3有7个不同的可下载版本:

 

Java3D for Windows(DirectX version)SDK for JDK(include Runtime);
Java3D for Windows(OpenGL version)SDK for JDK(include Runtime);
Java3D for Solaris/SPARC Runtime for JDK(include Runtime);
Java3D for Windows(DirectX version)Runtime for JRE;
Java3D for Windows(OpenGL version)Runtime for JRE;
Java3D for Solaris/SPARC SDK for JRE;
Java3D for Solaris Runtime 64 bit support;

 

  其中前三个版本是开发包。第4、5、6个版本是Java3D运行期支持程序包。最后一个是支持Solaris 64 bit操作平台运行Java3D的程序包。前三个的开发包包含了各自对应的运行期支持包。Java语言本身具有跨平台特性,无论使用上述哪个版本的开发包,概念和实现代码都会保持完全一致。这里我们使用Java3D for Windows(OpenGL version)SDK for JDK(include Runtime);版本作为我们讨论、实现Java3D的工具包。注意在安装此版本SDK前要保证下列环境:

 

  Java 2 (Runtime or SDK) version 1.3.1 或更后的版本

 

  OpenGL 1.1 或更后的版本,并且是Microsoft支持的显卡厂商

 

  Windows NT 4.0 only: Service Pack 3 或更后的版本(Window2000、WindowXP)

 

  Java3D与其他三维技术的比较

 

  JAVA3D可应用在三维动画、三维游戏、机械CAD等多个领域。但作为三维显示实现技术,它并不是唯一选择而且是一个新面孔。在Java3D之前已经存在很多三维技术,这些三维技术在实现的技术、使用的语言以及适用的情况上各有不同,我们主要介绍与Java3D又密切关系的三种技术:OpenGL、DIRECT3D、VRML

 

  OpenGL是业界最为流行也是支持最广泛的一个底层3D技术,几乎所有的显卡厂商都在底层实现了对OpenGL的支持和优化。OpenGL同时也定义了一系列接口用于编程实现三维应用程序,但是这些接口使用C(C++)语言实现并且很复杂。掌握针对OpenGL的编程技术需要花费大量时间精力。

 

  DIRECT3D是Microsoft公司推出的三维图形编程API,它主要应用于三维游戏的编程。众多优秀的三维游戏都是由这个接口实现。与OpenGL一样,Direct3D的实现主要使用C++语言。

 

  VRML2.0(VRML97)自1997年12月正式成为国际标准之后,在网络上得到了广泛的应用,这是一种比BASIC、JAVASCRIPT等还要简单的语言。脚本化的语句可以编写三维动画片、三维游戏、计算机三维辅助教学。它最大的优势在于可以嵌在网页中显示,但这种简单的语言功能较弱(如目前没有形体之间的碰撞检查功能),与JAVA语言等其它高级语言的连接较难掌握,因而逐渐被淹没在竞争激烈的网络三维技术中。
表1是Java3D与其它三维技术的比较图,可以从中直观的看出他们相互间的区别:

JAVA 3D开发工具包(3个版本安装包 + 一个用例)

AVA 3D开发工具包(3个版本),java3d-1_3、java3d-1_4、java3d-1_5,加一个例子。例子代码如下: import java.awt.GraphicsConfigura...
  • sinat_36258409
  • sinat_36258409
  • 2016年12月08日 19:41
  • 589

java3D一个场景内创建两个以上的图形

package test;import java.applet.Applet;import java.awt.BorderLayout;import java.awt.Color;import jav...
  • ydsxi1314
  • ydsxi1314
  • 2010年07月20日 16:01
  • 1053

JAVA3D安装小结(转)

课题需要根据实验数据画出3d曲面图,来展示二维数据,所以使用java3d来实现。这里是java3d的学习记录。 1.Java 3D简介       Java 3D是Java语言在三维图形领...
  • Landlord921
  • Landlord921
  • 2014年07月07日 14:39
  • 1083

JAVA 3D 碰撞检测Demo

桌面版碰撞检测,工作的很好,FPS达到40-60之间,为什么手机上就不能工作的很好呢,难道我的G1真太烂了,哎   import java.awt.Color; import java.awt....
  • Simdanfeg
  • Simdanfeg
  • 2011年06月29日 11:48
  • 3811

java 3D学习笔记

Java3D 运行及开发环境的安装运行Java 3D for Windows (OpenGL Version) SDK for the JDK (includes Runtime) (java3d-1...
  • s_ongfei
  • s_ongfei
  • 2008年05月16日 12:20
  • 4364

Java3D 集成开发环境部署与配置(含实例)

Java 3D开发相关的准备: 第一:下载Java 3D库            参考网址一:https://java3d.java.net/            参考网址二: http://tra...
  • zhongwen7710
  • zhongwen7710
  • 2014年05月31日 15:45
  • 2305

Java3D环境配置

首先到http://www.oracle.com/technetwork/java/javase/downloads/index.html
  • tangyongsa
  • tangyongsa
  • 2014年04月28日 19:55
  • 1599

java3D 简介

java3D一。JAVA3D的作用: JAVA3D可用在三维动画、三维游戏、机械CAD等领域。1.可以用来编写三维形体,但和VRML不同,JAVA3D没有基本形体,不过我们可以利用JAVA3D所...
  • gaoyunpeng
  • gaoyunpeng
  • 2007年09月04日 11:19
  • 5030

Java3D应用实例-创建空间几何模型

Java3D,算是比较古老的技术,Java8中Oracle对JavaFX支持了Java3D. 相关资料参照Oracle官网 目前还没有正式发布 Early Access版本下载地址 http://jd...
  • u011393661
  • u011393661
  • 2014年02月25日 14:05
  • 1361

Java3D学习篇<第一个Java3D程序>

转载自:http://blog.csdn.net/zhaoweitco/article/details/7349978 感谢LZ  1.搭建环境     下载  java3d-1_5_1-win...
  • hackxiaoF
  • hackxiaoF
  • 2015年12月15日 20:25
  • 871
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java3D
举报原因:
原因补充:

(最多只允许输入30个字)