De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda
Jerarquías centrales Java 3D en LePUS3

Java 3D es una interfaz de programación de aplicaciones (API) 3D basada en gráficos de escena para la plataforma Java . Se ejecuta sobre OpenGL o Direct3D hasta la versión 1.6.0, que se ejecuta sobre Java OpenGL (JOGL). Desde la versión 1.2, Java 3D se ha desarrollado bajo el Proceso de la comunidad de Java . Un gráfico de escena Java 3D es un gráfico acíclico dirigido (DAG).

En comparación con otras soluciones, Java 3D no es solo un envoltorio de estas API de gráficos, sino una interfaz que encapsula la programación de gráficos utilizando un verdadero enfoque orientado a objetos . Aquí se construye una escena utilizando un gráfico de escena que es una representación de los objetos que deben mostrarse. Este escenario gráfico está estructurado como un árbol que contiene varios elementos necesarios para mostrar los objetos. Además, Java 3D ofrece un amplio soporte de sonido espacializado .

Java 3D y su documentación están disponibles para descargar por separado. No forman parte del Java Development Kit (JDK).

Historia [ editar ]

Intel , Silicon Graphics , Apple y Sun habían conservado las API de gráficos de escena de modo en desarrollo en 1996. Como todos querían hacer una versión de Java, decidieron colaborar para hacerlo. Ese proyecto se convirtió en Java 3D. El desarrollo ya estaba en marcha en 1997. En marzo de 1998 se lanzó una versión beta pública. La primera versión se lanzó en diciembre de 1998. Desde mediados de 2003 hasta el verano de 2004, se interrumpió el desarrollo de Java 3D. En el verano de 2004, Java 3D fue lanzado como un proyecto de fuente comunitaria, y Sun y los voluntarios han continuado su desarrollo desde entonces.

El 29 de enero de 2008, se anunció que las mejoras a Java 3D se suspenderían para producir un gráfico de escena 3D para JavaFX [1] JavaFX con soporte 3D finalmente se lanzó con Java 8. [2] La funcionalidad de gráficos 3D de JavaFX ha más o menos vienen a reemplazar a Java 3D.

Desde el 28 de febrero de 2008, todo el código fuente de Java 3D se publica bajo la licencia GPL versión 2 con excepción de vinculación GPL . [3]

Desde el 10 de febrero de 2012, Java 3D utiliza JOGL 2.0 para su renderizado OpenGL acelerado por hardware. El puerto fue iniciado por Julien Gouesse. [4]

Funciones [ editar ]

Una captura de pantalla del trabajo dibujado con Java 3D
  • Estructura de gráfico de escena multiproceso
  • Multiplataforma
  • API genérica en tiempo real , utilizable tanto para visualización como para juegos
  • Soporte para renderizado en modo retenido , compilado-retenido e inmediato
  • Incluye procesadores JOGL , OpenGL y Direct3D acelerados por hardware (según la plataforma)
  • Modelo de vista sofisticado basado en realidad virtual con soporte para renderizado estereoscópico y configuraciones complejas de múltiples pantallas
  • Soporte nativo para pantalla montada en la cabeza
  • CAVE (proyectores de pantalla múltiple)
  • Sonido espacial 3D
  • Sombreadores programables, compatibles con GLSL y CG
  • Tampón de plantilla
  • Importadores para la mayoría de los formatos principales, como 3DS , OBJ , VRML , X3D , NWN y FLT

Tecnologías en competencia [ editar ]

Java 3D no es la única opción de API de alto nivel para renderizar 3D en Java. En parte debido a la pausa en el desarrollo durante 2003 y 2004, surgieron varias tecnologías de gráficos de escena Java en competencia:

Propósito general:

  • Ardor3D
  • JavaFX

Juego de azar:

  • jMonkeyEngine
  • Espresso3D

Visualización:

  • Realidad

Además de estos, muchas otras API de gráficos de escena de C o C ++ ofrecen compatibilidad con Java a través de JNI .

En un nivel inferior, los enlaces JOGL (JSR 231) OpenGL para Java son una alternativa popular a las API de gráficos de escena como Java 3D. LWJGL es otra de esas vinculaciones.

Ver también [ editar ]

  • Project Looking Glass (Escritorio 3D experimental con Java 3D)
  • Open Wonderland (entorno de espacio de trabajo virtual que utiliza Java 3D y Project Darkstar)

Referencias [ editar ]

  1. ^ "ANUNCIO: planes Java 3D" . Sun Microsystems . 2008-01-29. Archivado desde el original el 10 de marzo de 2012 . Consultado el 11 de mayo de 2011 .
  2. ^ "Novedades de JDK 8" . Oracle Corporation . 2014-03-18.
  3. ^ "ANUNCIO: lanzamiento de código abierto GPL" . Sun Microsystems . 2008-02-28. Archivado desde el original el 24 de marzo de 2008 . Consultado el 29 de febrero de 2008 . CS1 maint: parámetro desalentado ( enlace )
  4. ^ "Java3D ahora funciona con JOGL 2.0" . Julien Gouesse. 2012-10-02 . Consultado el 2 de octubre de 2012 . CS1 maint: parámetro desalentado ( enlace )

Enlaces externos [ editar ]

  • Harvey presenta el estado actual de Java3D "I'm not Dead!" en SIGGRAPH 2013
  • Java 3D est de retour (Java 3D está de vuelta): introducción a la configuración de vista previa de Java3D
  • Versiones actuales (Java 3D 1.7)
  • Lanzamientos y sitio oficial anterior
  • JSR 926 (Java 3D 1.5), JSR 912 (Java 3D 1.3)
  • Foro actual (Java 3D 1.6)
  • Foro anterior y Wiki para Java 3D - Lugares de colaboración; incluye listas de libros y usuarios, preguntas frecuentes y una base de conocimientos
  • java3d.org . Tutorial, ejemplos e información
  • Tutoriales de OpenGL.J3D Java 3D
  • Conferencia - de Siggraph para principiantes
  • Programación de juegos [1] , [2] en Java 3D (capítulos como archivos pdf y código fuente)
  • Complemento para Eclipse alojado por SourceForge
  • Ejemplo de subprogramas de visualización usando Java 3D
  • EMAP, The e-Mouse Atlas Project : un explorador de estructuras anatómicas en 3D con una sección 2D incorporada realizado por Guangjie Feng