jMonkey Engine

jMonkey Engine

jMonkey Engine (abreviado jME) es un motor de videojuegos libre orientado al desarrollo moderno de videojuegos en tres dimensiones. jME es uno de los engines 3D más completos escritos en Java.

jME es una API basada en árbol de nodos. La mayoría de la inspiración de jME proviene de David Eberly y su libro 3D Game Engine Design. Usando una capa de abstracción permite cualquier API de renderizado, adosable en forma de plugin. Actualmente LWJGL y JOGL ya son compatibles.

jME es completamente de código abierto, y se publica bajo la licencia BSD.

Fue creado por Mark Powell en 2003 mientras investigaba OpenGL. Después de descubrir LWJGL, decidió que Java (su lenguaje preferido) sería perfecto para crear sus propias aplicaciones gráficas. Estas herramientas pronto se convertirían en un motor primitivo. Después de leer el libro 3D Game Engine Design de David Eberly, implementó la arquitectura de grafo de escenas (árbol de nodos). Fue entonces cuando jME empezó a formar parte del repositorio de software Sun en Java.net. jME captó a desarrolladores que ampliaban sus funciones. Poco a poco jME adquirió modernos efectos gráficos y se convirtió en una plataforma estable para el desarrollo de videojuegos. Joshua empezó a formar parte de jME a finales de 2003 y se convirtió en uno de los programadores principales de jMonkey Engine.

Características

jME está basado en una arquitectura de escenas de tipo árbol. Esto permite la organización de los datos del juego en un grafo de nodos, donde un nodo padre puede contener cualquier número de nodos hijos, pero un nodo hijo sólo contiene un único padre. Estos nodos están organizados espacialmente para permitir sencillamente descartar ramas de la estructura.

Por ejemplo, si se construye un grafo donde todos los objetos en una habitación comparten el mismo padre ("habitación") y todas las habitaciones comparten un padre ("planta"), donde todas las plantas comparten el padre "edificio". Los personajes están en la habitación 1 de la primera planta. Podemos fácilmente descartar el nodo de la planta 2 (y por lo tanto todas las habitaciones de la planta 2, y sus objetos hijos). Podemos entonces procesar la rama del grafo: planta 1. Todas las habitaciones que no sean habitación 1 serán descartadas, incluyendo todos los objetos en esas habitaciones. Procesando únicamente habitación 1 y sus objetos hijos.

Descartar puede significar un montón de cosas, pero la más importante en el desarrollo gráfico es hacer culling. El sistema de cámaras de jME usa la técnica culling para saber qué está fuera de la escena, y qué ramas no son visibles. Esto permite que escenas complejas sean renderizadas rápidamente sin renderizar todo aquello que no es visible.

Los nodos hojas (es decir, los nodos que se encuentran en los extremos de las ramas del árbol y que no tienen nodos hijos), son la geometría que se renderiza en pantalla. Pueden usarse muchos tipos de geometrías, como: líneas, puntos, modelos (Milkshape, MD2, ASE, OBJ, etc), terrenos, niveles de detalles y más. También se puede hacer uso de muchos efectos de alto nivel como: renderizado en textura, mapeo del entorno, lentes, tintado, sistema de partículas, etc...

jME provee al usuario de clases potentes y a la vez fáciles de usar para construir su aplicación.

Enlaces externos


Wikimedia foundation. 2010.

Игры ⚽ Поможем написать реферат

Mira otros diccionarios:

  • JMonkey Engine — Infobox Software name = jMonkey Engine caption = developer = [http://www.jmonkeyengine.com/index.php?option=com content task=view id=42 Itemid=65 The jME Team] latest release version = 2.0BETA latest release date = April 27, 2008 latest preview… …   Wikipedia

  • Game engine — A game engine is a system designed for the creation and development of video games. There are many game engines that are designed to work on video game consoles and personal computers. The core functionality typically provided by a game engine… …   Wikipedia

  • Source (game engine) — Source engine …   Wikipedia

  • 3D-Engine — Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung. Eine Grafik Engine (wörtlich „Grafik Maschine“, freier etwa:… …   Deutsch Wikipedia

  • Chrome Engine — Developer(s) Techland Initial release 2003, with Chrome Engine I Stable relea …   Wikipedia

  • Diesel (game engine) — The Diesel engine is a game engine developed and used by GRIN. The engine was originally developed for their game Ballistics and has been used, albeit with modifications, in a number of other games since then. The first installment of the engine… …   Wikipedia

  • Crystal Space — Developer(s) Jorrit Tyberghein et al. Stable release 1.4.0 / January 25, 2010; 20 months ago ( …   Wikipedia

  • OGRE — For other uses, see Ogre (disambiguation). OGRE Developer(s) The OGRE Team …   Wikipedia

  • List of game engines — Many tools called game engines are available for game designers to code a game quickly and easily without building from the ground up. Contents 1 Free and open source 2 Proprietary 2.1 Commercial 2.2 Freeware …   Wikipedia

  • 3DEngine — Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung. Eine Grafik Engine (wörtlich „Grafik Maschine“, freier etwa:… …   Deutsch Wikipedia

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”