miércoles, 7 de diciembre de 2016

API 3D DE JAVA

ALUMNO: ELÍAS BARRÓN CERDA
ALUMNO: GERARDO DE LEÓN ANDRIO

INTRODUCCIÓN A LA API DE JAVA 3D

El API Java 3D es una interfaz de programación de aplicación que se utiliza para escribir aplicaciones y applets de gráficos tridimensionales. Se ofrece a los desarrolladores construcciones de alto nivel para crear y manipular la geometría 3D y para la construcción de las estructuras utilizadas en la prestación de dicha geometría. Los desarrolladores de aplicaciones pueden describir muy grandes mundos virtuales utilizando estas construcciones, que proporcionan de Java 3D con suficiente información para hacer que estos mundos de manera eficiente.
El API Java 3D toma sus ideas de APIs gráficas existentes y de las nuevas tecnologías. Construcciones gráficas de bajo nivel de Java 3D sintetizan las mejores ideas que se encuentran en las API de bajo nivel, como Direct3D, OpenGL, QuickDraw3D, y XGL. Del mismo modo, sus construcciones de nivel superior sintetizan las mejores ideas que se encuentran en los sistemas basados ​​en el gráfico varias escenas.Java 3D introduce algunos conceptos que normalmente no se considera parte del entorno gráfico, como por ejemplo el sonido espacial 3D. Capacidades de sonido de Java 3D ayudan a proporcionar una experiencia más envolvente para el usuario.

PARADIGMA DE PROGRAMACIÓN

Java 3D es una API orientada a objetos. Aplicaciones construyen elementos gráficos individuales como objetos separados y se conectan entre sí en una estructura en forma de árbol llamado un escenario gráficoLa aplicación manipula estos objetos usando su descriptor de acceso predefinido, mutador, y los métodos de nodo-linking.

EXTENSIBILIDAD

La mayoría de las clases de Java 3D exponen sólo métodos de acceso y mutantes. Estos métodos funcionan sólo en el estado interno de ese objeto, por lo que es de sentido para una aplicación para anular ellos. Por lo tanto, Java 3D no proporciona la capacidad de modificar el comportamiento de los atributos de Java 3D. Para hacer Java 3D funciona correctamente, las aplicaciones deben llamar "super.setXxxxx" por cualquier método set estado atributo que se anula.
Las aplicaciones pueden extender las clases de Java 3D y añadir sus propios métodos. Sin embargo, ellos no pueden anular la semántica de recorrido del escenario gráfico Java 3D debido a que los nodos no contienen recorrido explícito y dibujan métodos. El renderizador de Java 3D conserva esa semántica internamente.
Java 3D hace proporcionar ganchos para mezclar Java 3D-controlado prestación del escenario gráfico y la representación controlada por el usuario utilizando construcciones modo inmediato de Java 3D .Como alternativa, la aplicación puede dejar de renderizador de Java 3D y hacer todo su trazado en el modo inmediato.
ALTO RENDIMIENTO

El modelo de programación de Java 3D permite que el API Java 3D para realizar las tareas cotidianas, como el recorrido del escenario gráfico, la gestión de los cambios de estado de atributos, y así sucesivamente, lo que simplifica el trabajo de la aplicación. Java 3D hace esto sin sacrificar el rendimiento. A primera vista, podría parecer que este enfoque crearía más trabajo para la API; sin embargo, en realidad tiene el efecto contrario. un mayor nivel de Java 3D de los cambios de abstracción no sólo la cantidad sino, más importante, también el tipo de trabajo de la API debe realizar. Java 3D no necesita imponer el mismo tipo de limitaciones al igual que las API con un menor nivel de abstracción, permitiendo así Java 3D para introducir optimizaciones que no son posibles con estas API de nivel inferior.

PLATAFORMAS DE HARDWARE
Java 3D está dirigido a una amplia gama de plataformas de hardware y software con capacidad 3D, desde tarjetas de juegos de PC de bajo costo y prestadores de software en el extremo inferior, a través de las estaciones de trabajo de gama media, todo el camino hasta muy alto rendimiento generadores de imágenes en 3D especializada.
Se espera que las implementaciones de Java 3D para proporcionar velocidades de renderizado útiles en la mayoría de los PCs modernos, especialmente aquellos con gráficos en 3D tarjetas aceleradoras. En estaciones de trabajo de gama media, se espera que Java 3D para proporcionar aplicaciones con un rendimiento de hardware casi a toda velocidad.
Finalmente, Java 3D está diseñado para escalar como las plataformas de hardware subyacentes aumento de la velocidad en el tiempo. Los aceleradores de juegos de PC 3D del mañana apoyarán mundos virtuales más complejas que las estaciones de trabajo de alto precio de hace unos años. Java 3D está preparada para satisfacer este aumento en el rendimiento del hardware.

MODOS DE REPRESENTACIÓN


Java 3D incluye tres diferentes modos de representación: el modo inmediato, de modo retenido, y el modo retenido-compilado. Cada modo de representación sucesiva Java 3D permite una mayor libertad en la optimización de la ejecución de una aplicación. La mayoría de las aplicaciones Java 3D querrán aprovecharse de los beneficios de conveniencia y rendimiento que los modos retenidos-compilado retenida y proporcionan.

MODO INMEDIATO

El modo inmediato deja poco espacio para la optimización global a nivel del escenario gráfico. A pesar de ello, Java 3D ha elevado el nivel de abstracción y acelera la prestación modo inmediato en un objeto por objeto. Una aplicación debe proporcionar un método de sorteo de Java 3D con un conjunto completo de puntos, líneas o triángulos, que luego son prestados por la alta velocidad de procesador de Java 3D.Por supuesto, la aplicación puede construir estas listas de puntos, líneas, triángulos o en cualquier manera que desee.

CONSERVAR MODO

Modo retenido requiere una aplicación para construir un escenario gráfico y especificar qué elementos de ese escenario gráfico se pueden cambiar durante la representación. En el gráfico de la escena se describen los objetos en el universo virtual, la disposición de dichos objetos, y cómo la aplicación anima esos objetos.

MODO COMPILADO-RETENIDO

Modo compilado retenidas, al igual que el modo retenido, requiere la aplicación de construir un escenario gráfico y especificar qué elementos del escenario gráfico se pueden cambiar durante la representación. Además, la aplicación puede compilar algunos o todos los subgraphs que componen un gráfico de la escena completa. Java 3D compila estos gráficos en un formato interno. La representación compilada del escenario gráfico puede alejarse mucho de la estructura de árbol original proporcionado por la aplicación, sin embargo, es funcionalmente equivalente. Modo retenido-compilado ofrece el más alto rendimiento.

INSTALACIÓN DE JAVA 3D
Ahora que entendemos las principales características y limitaciones de Java 3D, vamos a estar listos para probar un código de ejemplo.
Java 3D está disponible en beta para Win32 y Solaris. Cuanto más madura de las implementaciones de Java de Sun 3D se construye en la parte superior de OpenGL. Una aplicación Direct3D calidad alpha también está disponible para Win32. Todos requieren Java 1.2, con la última versión beta de Java 3D correspondiente a Java 1.2 Beta 4. Sun ha prometido liberar la implementación final de Java 3D poco después de que se libere Java 1.2, que actualmente está prevista para diciembre de 1998.
Los componentes de software que se necesitan para utilizar Java 3D son:
  • Tiempo de ejecución de Java 3D , disponible de Sun (Java Developer Connection entrada libre requerido). Asegúrese de elegir la versión de OpenGL de Java 3D para su plataforma (estoy usando Win32). A partir de ahora, la última Win32 Java 3D para OpenGL 1.1 Beta 2 es, en java3d11-beta2-win32-opengl.exe, y pesa aproximadamente 1,7 MB.
  • OpenGL 1.1, que se incluye con Windows NT 4.0 y Windows 95 OSR 2. Si usted tiene la versión OSR 1 de Windows 95, sin embargo, usted puede descargar la compatibilidad con OpenGL . El más reciente de Windows 95 OpenGL 1.1 aplicación está disponible en Microsoft como Opengl95.exe, y es aproximadamente de 0,5 MB.
  • Java 1.2 , disponible de Sun. (Tenga en cuenta que al momento de escribir esto, Sun ha lanzado una nueva Java 1.2 -. Release Candidate 1. Los ejemplos serán actualizados para la versión más reciente tan pronto como sea posible) de Java 3D se acopla a la plataforma 1.2, y Sun ha indicado en el java3d interés lista de correo que no tiene ningún interés en la disociación de la API y tratando de hacer que esté disponible con las versiones anteriores de la plataforma.

Opcionalmente, también es posible que desee descargar la documentación y el ejemplo de código Java 3D. Ambos están disponibles desde el mismo enlace que el tiempo de ejecución de Java 3D.

No hay comentarios.:

Publicar un comentario