Ya explicamos anteriormente cómo es la estructura general de un programa escrito en Java utilizando JOGL, por el momento mostraremos cómo dibujar un JFrame centrado en la pantalla sea cual sea la resolución de ésta para que, posteriormente, podamos dibujar dentro del mismo algunos gráficos utilizando JOGL. De ésta manera comenzaremos a estudiar la estructura general de un programa escrito en Java para qué, más adelante, se estudien los métodos utilizados por GLEventListener.



He aquí el código:

/* Importamos las clases JFrame y JPanel
* contenidas dentro del paquete SWING */
import javax.swing.JFrame;
import javax.swing.JPanel;

/* Importamos las clases Container, BorderLayout,
* Toolkit y Dimension del paquete AWT. */
import java.awt.Container;
import java.awt.BorderLayout;
import java.awt.Toolkit;
import java.awt.Dimension;

// Creamos nuestra clase principal que extiende de la clase JFrame
public class jFrameCentrado extends JFrame
{
/* Necesitaremos un JPanel para introducir
* los elementos que se mostrarán en el JFrame. */
JPanel panel;

/* Declaramos un contenedor para introducir
* nuestro panel principal, el contenedor
* será el JFrame en general. */
Container contenedor;

/* El toolkit es útil para obtener
* información básica de la computadora, cómo la resolución
* o dimensión de la pantalla,
* dónde se está ejecutando el programa */
Toolkit kit;

/* Esta variable la utilizaremos para almacenar
* la dimensión (ancho x alto), en pixeles, de
* la pantalla dónde se está ejecutando el programa. */
Dimension dimensionPantalla;

// Variable para almacenar la altura, en pixeles, de la pantalla
int altura;
// Variable para almacenar la anchura, en pixeles, de la pantalla
int anchura;

// Constructor
public jFrameCentrado()
{
/* Llamamos a la superclase de JFrame
* la cual colocará un título al mismo. */
super("Frame centrado");

/* Instanciamos un objeto de Toolkit para obtener
* los datos generales de nuestra computadora. */
kit = Toolkit.getDefaultToolkit();

/* Obtenemos la dimensión de la pantalla en pixeles */
dimensionPantalla = kit.getScreenSize();

/* Almacenamos la altura y anchura, en pixeles, de la pantalla.
* Debido a que los métodos "getHeight" y "getWidth" regresan una
* variable de tipo double, necesitaremos obligar
* al programa que convierta dicha variable a int, es decir, haremos un "cast". */
altura = (int)dimensionPantalla.getHeight();
anchura = (int)dimensionPantalla.getWidth();

/* Le decimos a Java que el contenedor será el mismo JFrame */
contenedor = getContentPane();

/* Instanciamos un objeto de la clase JPanel, en este
* caso, estará vacío. */
panel = new JPanel();

/* Agregamos el JPanel dentro del JFrame utilizando el
* contenedor creado previamente, situando al JPanel
* en el centro del JFrame utilizando BorderLayout */
contenedor.add(panel, BorderLayout.CENTER);

/* Ya que tenemos obtenida la altura y anchura, en pixeles
* de la pantalla, definimos el tamaño del JFrame.
* En este caso será del tamaño de la mitad de ancho
* de la pantalla por la mitad de altura de la pantalla. */
this.setSize(anchura/2, altura/2);

/* Ahora situamos al JFrame exactamente en el centro de la
* pantalla donde se está ejecutando el programa */
this.setLocation(anchura/4, altura/4);

/* Lo hacemos redimensionable y visible */
this.setResizable(true);
this.setVisible(true);

/* Finalmente, le indicamos a Java que queremos que nuestro
* JFrame se cierre cuando demos click en el botón cerrar (tache)
* que aparecerá en la parte superior derecha del mismo. */
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
} // Fin del constructor

// Método principal para iniciar la ejecución de nuestro programa
public static void main(String[] args)
{
/* Simplemente crearemos un objeto de la clase
* jFrameCentrado, entonces el programa ejecutará
* el código del constructor. */
new jFrameCentrado();
}
} // Fin de la clase jFrameCentrado

Al compilar y ejecutar el código anterior, nos mostrará un JFrame centrado como el de la figura siguiente:


Este JFrame nos será de gran utilidad en nuestros programas posteriores, ya que podremos introducir dentro de éste, con la ayuda del JPanel creado, los gráficos creados con JOGL. Si desean descargar el código fuente pueden dar click en el enclas siguiente:

Descargar código fuente jFrameCentrado.java


Leer más...

Antes que todo, explicaremos cómo está conformada la estructura de un programa escrito en Java utilizando librerías de JOGL. Como la mayoría de ustedes saben, un programa escrito solamente en Java está conformado por un mínimo de cinco partes:

  1. La clase principal de nuestro programa.
  2. Las variables utilizadas por la clase.
  3. El constructor de la clase.
  4. Los métodos que utilizará la clase.
  5. El método principal (main) que comenzará la ejecución de nuestro programa.

Entonces, un programa sencillo en Java estaría escrito más o menos de la siguiente manera:

// Debemos importar los paquetes que vayamos a necesitar
import java.awt.*; // Por ejemplo

// Clase principal
public class MiClase
{
// Variable 1
// Variable 2

// . . .

// Variable n

// Constructor
public MiClase()
{
/* Aquí inicializamos las variables 1, 2, . . ., n
* declaradas anteriormente */
}

// Métodos que utilizará la clase "MiClase"

public void metodo_1()
{ }

public int metodo_2()
{ }

// . . .

public double metodo_n()
{ }

// Método principal
public static void main(String[] args)
{
/* Instanciación de los objetos de la clase "MiClase"
* Comenzará la ejecución del código */
}
} // Fin de la clase "MiClase"

Ahora bien, como trabajaremos con gráficos de OpenGL será necesario implementar la interfaz conocida con el nombre de GLEventListener además de que, debido a que debemos montar los gráficos en alguna parte, tenemos que extender de la clase JFrame o JPanel.

La interfaz GLEventListener declara eventos los cuales son utilizados por el código cliente para manipular el renderizado de OpenGL a travez de GLAutodrawable.

Para que tengan una idea más clara, algo parecido ocurre cuando implementan la interfaz ActionListener para escuchar los eventos de los botones los cuales son manipulados por el código cliente a través de ActionEvent.

La interfaz GLEventListener utiliza cuatro métodos principales los cuales será necesario declarar dentro de la estructura de nuestro programa para que éste funcione.

1 -public void init(GLAutodrawable drawable)

Este método es llamado por drawable inmediatamente después de que el contexto de OpenGL (procedimiento que realizará un objeto GLCanvas) es inicializado. Puede ser utilizado para la inicialización de los gráficos de OpenGL que GLCanvas utilizará tales como el color de fondo, color de los objetos que se dibujarán, luces que se manejarán, etc.

2 - public void reshape(GLAutodrawable drawable, int x, int y, int width, int height)

Este método es llamado por drawable durante el primer redibujado (repaint) y después de que el componente se redimensiona (resize). El cliente puede actualizar el punto de vista (viewport) de los gráficos apropiadamente.

3 - public void display(GLAutodrawable drawable)

Este método es llamado por drawable para iniciar el renderizado de OpenGL a petición del cliente. Dentro de este método se incluirán los gráficos que GLCanvas dibujará y será llamado cada vez que se le solicite, o bien, cuando todos los GLEventListeners hayan sido notificados de que ocurrió algún evento.

4 - public void displayChanged(GLAutodrawable, boolean modeChanged, boolean deviceChanged)

Este método es llamado por drawable cuando ocurre algún cambio en el visualizador (pantalla) asociado con GLAutoDrawable. Los dos parámetros de tipo boolean indican el tipo de cambio que ha ocurrido.

Para que se tenga una idea más clara sobre los cambios que pueden ocurrir en el visualizador (pantalla) se presentan dos ejemplos:
  1. Cambio de modo de pantalla (display mode changed). Esto ocurre cuando, por ejemplo, la calidad del color cambia (digamos de 32-bits a 16-bits) en un monitor donde el GLAutoDrawable está siendo dibujado.
  2. Cambio de visualizador (display device changed). Esto ocurre cuando, por ejemplo, el usuario arrastra una ventana que contiene un GLAutoDrawable de un monitor a otro en una configuración de múltiples monitores con diferentes resoluciones.
Por lo tanto, un programa escrito en Java utilizando librerías JOGL estaría escrito más o menos de la siguiente manera:

// Debemos importar los paquetes de Java que vayamos a necesitar
import java.awt.*; // Por ejemplo
// Debemos importar las librerías de JOGL que vayamos a necesitar
import javax.media.opengl.*; // Por ejemplo

// Clase principal que extenderá de JFrame e implementará
// la interfaz GLEventListener
public class MiClase extends JFrame implements GLEventListener
{
// Variable 1
// Variable 2

// . . .

// Variable n


// La interfaz GL nos permitirá el acceso a todos
// los métodos utilizados por OpenGL

static GL gl;

/* La clase GLCanvas nos proporciona el soporte para
* el renderizado
de los gráficos de OpenGL, es decir,
* dentro de este objeto se dibujarán
los gráficos
* creados. */

static GLCanvas canvas;

// Constructor
public MiClase()
{
/* Aquí inicializamos las variables 1, 2, . . ., n
* declaradas anteriormente, así como
* todas las variables de las librerías JOGL */

}

// Métodos que utilizará la clase "MiClase"

public void metodo_1()
{ }

public int metodo_2()
{ }

// . . .

public double metodo_n()
{ }

/* Aquí agregamos los métodos que utilizará la
* interfaz GLEventListener */

public void init(GLAutoDrawable drawable)
{
/* Este método es el que inicializará
* los gráficos de OpenGL que GLCanvas utilizará,
* para llamar a las funciones de OpenGL
* utilizaremos el objeto gl
* instanciado anteriormente. */
}

public void reshape(GLAutoDrawable drawable,
int x, int y, int anchura, int altura)
{
/* Este método, como se explicó, se utiliza para que
* el usuario pueda modificar el "viewport" de los
* gráficos adecuadamente */
}

public void display(GLAutoDrawable drawable)
{
/* Este método es utilizado para crear todos
* los gráficos que se dibujarán dentro del
* objeto GLCanvas */
}

public void displayChanged(GLAutoDrawable drawable,
boolean modeChanged,
boolean deviceChanged)
{
/* Método para el manejo de eventos del cambio de
* visualizador. */
}

// Método principal
public static void main(String[] args)
{
/* Instanciación de los objetos de la clase "MiClase"
* Comenzará la ejecución del código */
}
} // Fin de la clase "MiClase"

Hasta el momento no hemos creado algún código que produzca algún resultado, lo anterior simplemente fue un ejemplo de la apariencia que debe tener un programa escrito en Java utilizando librerías con OpenGL. En la siguiente entrada de este blog mostraremos el ejemplo, ahora sí, de un programa que mostrará algo en pantalla.


Leer más...
miércoles, 29 de julio de 2009

Instalar JOGL con NetBeans

En una entrada anterior expliqué cómo instalar el JDK y cómo instalar NetBeans tanto en Windows como en Linux. Ahora veremos como instalar JOGL en NetBeans sin importar el sistema operativo utilizado (Windows o Linux). Para lograr nuestro cometido utilizaremos el paquete de OpenGL para NetBeans (NetBeans OpenGL Pack).



Primero ingresaremos a la página oficial del paquete de OpenGL para NetBeans dando click en el enlace siguiente:

The NetBeans OpenGL Pack

Damos click en el botón "Download" y guardamos el archivo netbeans-opengl-pack-version.zip que se descargará. Ingresamos a la carpeta donde guardamos el archivo .zip descargado anteriormente y lo descomprimimos, dicho archivo contiene archivos .nbm los cuales utilizaremos posteriormente. Ahora abrimos nuestro NetBeans y damos click en

Herramientas -> Complementos


Lo anterior abrirá una nueva ventana en la cual seleccionaremos la pestaña "Descargado", luego damos click en el botón "Agregar complementos". Buscamos y abrimos la carpeta donde descomprimimos el archivo netbeans-opengl-pack-version.zip y seleccionamos TODOS los archivos .nbm, finalmente damos click en "Abrir".


Ahora simplemente damos click en el botón "Instalar", aceptamos el contrato de la licencia y NetBeans finalizará el trabajo automáticamente. Al finalizar necesitaremos reiniciar nuestro NetBeans para que los cambios surtan efecto.


He aquí un video subido por lobo1024 en YouTube que explica el procedimiento visualmente:





NOTA FINAL:
Las instrucciones de instalación descritas anteriormente funcionan tanto en Windows como en Linux.


Leer más...

Anteriormente, expliqué cómo instalar JCreator Pro y cómo instalar el JDK. Ahora veremos como instalar JOGL y asociarlo con JCreator Pro para poder compilar nuestros programas y crear gráficos en 2D y 3D.




Primero descargaremos las librerías de JOGL para Windows (como trabajaremos con JCreator debemos bajar dichas librerías) dando click en el enlace siguiente:

Descargar librerías JOGL versión 1.1.1

El archivo descargado se trata de un .zip el cual tendrán que descomprimir, dicho archivo contiene las librerías de OpenGL versión 1.1.1, la cual es la versión utilizada al momento de escribir esta entrada, si desean la versión más actualizada tendrán que entrar a la página oficial de JOGL y descargarlas. Una vez que hayan descomprimido el archivo .zip copien TODOS los archivos .jar en una nueva carpeta llamada "jogl" dentro de la carpeta donde instalaron su JDK la cual deberá tener una ruta parecida a:

"C:\Archivos de Programa\Java\jdk-version"


Después copien TODOS los archivos .dll dentro de la carpeta llamada "bin", esta carpeta se encuentra ubicada dentro de la carpeta donde instalaron su JDK la cual deberá tener una ruta parecida a:

"C:\Archivos de Programa\Java\jdk-version\bin"


Ahora asociaremos las librerías de JOGL con JCreator para que podamos compilar nuestros programas escritos utilizando dichas librerías y poder crear gráficos 2D y 3D. Además, cuando escribamos el código de nuestros programas, la función de autocompletado de JCreator funcionará sin problemas. Los siguientes pasos tendrán que ser realizados cada vez que queramos escribir un programa utilizando JOGL:

Abrimos JCreator y damos click en

File -> New -> Project


Seleccionamos el tipo de aplicación que vamos a crear, esta puede ser cualquiera de las siguientes:

  • Basic Java Aplication
  • Basic Java Applet
  • Empty Project
Le ponemos un nombre al nuevo proyecto e indicamos la ruta donde se guardará, luego damos click en la pestaña "Required Libraries". Ahora damos click en el botón "New", ésto abrirá una ventana en la cual daremos click en

Add -> Archive


Buscamos la ubicación de los archivos .jar copiados previamente, éstos deben estar ubicados una ruta parecida a "C:\Archivos de Programa\Java\jdk-version\jogl", seleccionamos TODOS los archivos .jar y damos click en "Abrir". Lo anterior creará un ClassPath para asociar las librerías de JOGL y el JDK instalado para poder compilar el programa que escribiremos, ahora solo resta ponerle un nombre para que JCreator lo pueda identificar.


Una vez seleccionado el nombre damos click en "OK", después seleccionamos la casilla de verificación de las librerías agregadas previamente y damos click en "Finish".


Listo, ahora el programa que escribamos en Java utilizando las librerías de JOGL será compilado sin problema por JCreator utilizando el ClassPath creado anteriormente.


Leer más...
martes, 28 de julio de 2009

Java Development Kit (JDK)

Para poder compilar nuestros programas necesitaremos tener instalado el software Java Development Kit (JDK) en nuestra computadora. Dependiendo de nuestro sistema operativo (Windows o Linux) será la manera en que instalaremos dicho software.



Usuarios de Windows

Para los usuarios de Windows, utilizaremos la versión desrrollada por Sun Microsystems conocida, simplemente, por el nombre de JDK.

La versión ocupada al momento de escribir esta entrada es la 6 update 14 con JavaFX incluido. Para instalar el JDK simplemente sigan los siguientes pasos:

  1. Simplemente ingresen a la página oficial de descargas de Sun Microsystems y descarguen la versión que más les convenga. Incluso existe una versión con NetBeans integrado.
  2. Instalen el software dando doble click en el archivo jdk-version-windows.exe
  3. Sigan las sencillas instrucciones y listo, con esto, instalarán el compilador de java (javac) junto con el "Java Runtime Environment" (JRE) en su Sistema Windows.
Usuarios de Linux

Para los usuarios de Linux, utilizaremos la versión libre especial para este Sistema Operativo conocida por el nombre de OpenJDK.


Esta versión la probé tanto en Fedora como en Ubuntu (actualmente utilizo Xubuntu) sin problemas, por lo que, a continuación, explicaré ambas:

Linux Fedora


Para instalar el OpenJDK en Linux Fedora bastará con una simple instrucción (en modo de super-usuario) desde la línea de comandos (necesitas conexión a Internet):

#yum install -y java-1.6.0-openjdk*

Con esto, instalarás el compilador de java (javac) junto con el "Java Runtime Environment" (JRE) adecuado para tu sistema Fedora, ya sea de 32 o 64 bits.

Linux Ubuntu


Primero abre el administrador de paquetes (necesitarás conexión a Internet) dando click en:

Inicio -> Sistema -> Administrador de Paquetes

o bien:

Inicio -> Sistema -> Añadir/Remover...


Una vez abierta la ventana del gestor de paquetes, teclea el nombre del paquete OpenJDK y selecciona los paquetes:
  1. openjdk-6-jdk
  2. openjdk-6-jre
Una vez hecho lo anterior, da click en instalar paquetes seleccionados y acepta las dependencias. Con esto, instalarás el compilador de java (javac) junto con el "Java Runtime Environment" (JRE) adecuado para tu sistema Ubuntu, ya sea de 32 o 64 bits.

Como dije anteriormente, solamente he instalado y probado el OpenJDK en Fedora y Ubuntu, por lo que si desean instalarlo en alguna otra distribución, como SUSE o Debian, tendrán que checar en la página oficial de OpenJDK.


Leer más...
lunes, 27 de julio de 2009

NetBeans

Al igual que JCreator, NetBeans es un entorno de desarrollo integrado (IDE, Integrated Development Enviroment) para programar en Java.


La plataforma NetBeans permite que las aplicaciones sean desarrolladas a partir de un conjunto de componentes de software llamados módulos. Un módulo es un archivo Java que contiene clases de java escritas para interactuar con las APIs de NetBeans y un archivo especial (manifest file) que lo identifica como módulo.

Lo anterior es posible tambien hacerlo con JCreator pero no lo hace automáticamente, hay que hacerlo desde la línea de comandos. Debido a que los módulos pueden ser desarrollados independientemente, las aplicaciones basadas en la plataforma NetBeans pueden ser extendidas fácilmente por otros desarrolladores de software.

Puede ser fácilmente integrado con JOGL, JavaFX, Java ME, C, C++, PHP y MySQL. NetBeans es multiplataforma por lo que, no importando si eres usuario de Linux o Windows, puedes utilizarlo en tu computadora sin problema.

Para instalar NetBeans en su computadora hay que seguir los pasos siguientes:

Usuario Windows.

  1. Entra a la página oficial de descargas.
  2. Selecciona el idioma y el sistema operativo Windows 2000/XP/Vista.
  3. Da click en el botón "download" correspondiente al NetBeans que cumpla tus necesidades.
  4. Instala NetBeans simplemente dando doble click al archivo netbeans-version-windows.exe que descargaste previamente.
  5. El programa de instalación detectará automáticamente el JDK instalado en tu computadora, en caso contrario, indícale la ruta.
  6. Sigue las sencillas instrucciones de instalación y listo, ahora ya tienes instalado NetBeans en tu Sistema Windows.
Usuario Linux
  1. Entra a la página oficial de descargas.
  2. Selecciona el idioma y el sistema operativo Linux(x86/x64).
  3. Da click en el botón "download" correspondiente al NetBeans que cumpla tus necesidades.
  4. Desde la línea de comandos ingresa a la carpeta donde descargaste el archivo netbeans-version-linux.sh
  5. Teclea el comando chmod 777 netbeans-version-linux.sh
  6. Seguido del comando ./netbeans-version-linux.sh
  7. El programa de instalación detectará automáticamente el JDK instalado en tu computadora, en caso contrario, indícale la ruta.
  8. Sigue las sencillas instrucciones de instalación y listo, ahora ya tienes instalado NetBeans en tu Sistema Linux.
NOTA:
Si no tienes instalado el software Java Development Kit (JDK) necesitarás instalarlo primero. He aquí las instrucciones.


Leer más...

Necesitaremos de un editor para escribir nuestros programas y para realizar dicha tarea contamos con la opción de utilizar JCreator Pro.


JCreator Pro
es un poderoso entorno de desarrollo para programar en Java, con este programa podrás, entre otras cosas:

  • Manejar tus proyectos y “workplaces” con mucha más facilidad, ya que utiliza una interfaz parecida a la de Microsoft Visual Studio.
  • Elegir tus propias combinaciones de colores para otorgarte un número casi infinito de posibilidades para organizar tu código.
  • Re-usar el código de proyectos existentes utilizando diferentes versiones de JDK.
  • Escribir código más rápido ya que tiene la propiedad de “autocompletar” código.
  • Personalizar la interfaz de usuario a tu gusto.
  • Editar otros tipo de archivos además de Java, como los son: XML, Ajax, JavaScript y HTML, entre otros.
  • Experimentar la velocidad y eficiencia de un buen IDE ya que, al estar escrito completamente en C++, NO utiliza muchos recursos del Sistema Operativo como lo harían algún otro IDE escrito en Java.


Desgraciadamente, la versión “free” de este programa (JCreator LE) no contiene la mayoría de las características antes mencionadas y la versión “Pro” solamente la ofrecen como una versión de prueba por 30 días y si la quieres utilizar por más tiempo tienes que pagar un precio.

Debido a que necesitaremos la función de autocompletado de código (a menos que tengas una memoria prodigiosa) para encontrar con mayor facilidad las funciones, tanto de JOGL como las de AWT y SWING, es necesario contar con la versión Pro.

Anteriormente subí JCreator Pro en su versión 4.50.010 en Megaupload, así que simplemente píquenle al enlace de abajo y descárguenlo, las instrucciones para su instalación vienen dentro del archivo.

Descargar JCreator Pro 4.50.010 vía Megaupload.

En el remoto caso de que hayan borrado o dado de baja el enlace de Megaupload, pueden bajar el programa desde mi sitio de Skydrive.

Descargar JCreator Pro 4.50.010 vía Skydrive.

NOTAS:
  1. JCreator, desgraciadamente, solamente está disponible para Windows y no da soporte para Linux. Si eres usuario de Linux tendrás que utilizar un editor diferente como NetBeans o JEdit
  2. Si no tienes instalado el software Java Development Kit (JDK) necesitarás instalarlo primero. He aquí las instrucciones.


Leer más...

En este blog tataremos de expicar de una manera sencilla cómo escribir código para crear gráficos, tanto en 2D como en 3D, con JOGL y Java. Comenzaremos desde lo más sencillo e iremos aumentando el nivel de complejidad conforme el paso del tiempo de vida de este blog. Antes de empezar daremos una breve explicación sobre OpenGL y JOGL.



OpenGL

OpenGL (Open Graphics Library) es una especificación estándar que define una API (Aplication Programming Interface) multilenguaje y multiplataforma para escribir aplicaciones que produzcan gráficos 2D y 3D. La interfaz consiste en más de 250 funciones diferentes que pueden usarse para dibujar escenas tridimensionales complejas a partir de primitivas
geométricas simples, tales como puntos, líneas, tirángulos y cuadrados. Fue desarrollada originalmente por Silicon Graphics Inc. (SGI) y se usa ampliamente en CAD, realidad virtual, representación científica, visualización de información y desarrollo de videojuegos donde compite con Direct3D en plataformas Microsoft Windows.

JOGL

JOGL (Java OpenGL) es una biblioteca que permite acceder a OpenGL mediante programación en Java. JOGL permite acceder a la mayoría de características disponibles para los programadores de C, con la excepción de las llamadas a ventanas realizadas en GLUT ya que Java contiene sus propios sistemas de ventanas (AWT y Swing). Así que si aprendiste a usar OpenGL con programación en C o C++ entonces solamente tendrás que aprender a realizar las llamadas a los sistemas de ventanas de Java.

La API Java2D de la versión Java SE 6 y JOGL son interopebles, esto quiere decir que:

  • Se pueden sobreescribir componentes Swing mediante renderizado en OpenGL.
  • Se pueden dibujar gráficos 3D mediante OpenGL sobre Java2D.
Al momento de crear este blog se estuvo trabajando con las librerías de jogl versión 1.1.1, sin embargo, actualmente se han actualizado a la versión 2.0 las cuales han cambiado mucho sus funciones y métodos. Debido a lo anterior se tratará de abarcar ambos estilos de código.

Conocimientos previos

Si no habías hecho gráficos con OpenGL en C o C++ anteriormente, no te preocupes, ya que comenzaremos desde lo más sencillo hasta lo más complejo, sin embargo, antes de comenzar a explicar las funciones que JOGL ofrece es necesario tener conocimientos básicos de las librerías gráficas AWT y Swing de Java. Si nuncas habías hecho programas en Java te recomiendo que repases algunos libros ya que la mayoría de las aplicaciones que se explicarán requieren saber las funciones básicas de este lenguaje.


Leer más...