So lassen sich in Java OpenGL-Funkionen nutzen

Java OpenGL ist eine Wrapper-Bibliothek, die die Verwendung der plattformübergreifenden Standard-Grafik-API OpenGL in Java ermöglicht. Der Artikel erklärt den Einsatz der wichtigsten Funktionen von JOGL.

Seit dem Erscheinen der Java-SE-6-Version sind Java 2D und JOGL interoperabel. Dadurch kann JOGL Swing-Komponenten über das OpenGL-Rendering legen, OpenGL-3D-Grafiken über das Java-2D-Rendering zeichnen, Java-2D-Grafiken über das 3D-OpenGL-Rendering zeichnen und so weiter.

JOGL wird momentan von der Game Technology Group entwickelt, die zu Sun Microsystems gehört. Die Programmbibliothek gilt als Referenzimplementierung für JSR-231 (Java Bindings for OpenGL).

JOGL-Screenshot
Der Screenshot zeigt das Rendering mit OpenGL unter der Verwendung von JOGL. Er liefert ein Beispiel für Lichtbrechungs- und Spiegelungseffekte.

Das Design von JOGL

In JOGL erfolgt der Zugriff auf die Basis-OpenGL-C-API über JNI-Aufrufe (Java Native Interface). Das zugrunde liegende System muss also OpenGL unterstützen, damit JOGL funktioniert. JOGL unterscheidet sich von so manch anderen Java-OpenGL-Wrapper-Bibliotheken: Es verwendet kaum die prozedurale OpenGL-API und arbeitet mit nur wenigen Wrapperklassen. Es versucht also nicht, die OpenGL-Funktionalität auf das objektorientierte Programmierparadigma abzubilden.

Den JOGL-Code erstellen die OpenGL-C-Header-Dateien großteils automatisch. Dafür kommt das Konvertierungstool Gluegen zum Einsatz. Es wurde eigens zur Vereinfachung der Entwicklung von JOGL programmiert. Diese Design-Entscheidung hat Vor- und Nachteile.

OpenGL ist eher eine Zustandsmaschine und prozedural angelegt. Das passt eigentlich nicht zur typischen Verfahrensweise des Programmierens unter Java. Viele Programmierer finden das sehr lästig. Das unkomplizierte Mapping der OpenGL-C-API auf Java-Methoden erleichtert aber die Konvertierung bestehender C-Anwendungen und des Beispielcodes enorm. Durch die dünne Abstraktionsschicht von JOGL funktioniert die Laufzeitausführung sehr effizient. JOGL ist jedoch viel schwieriger zu programmieren als Bibliotheken mit höherer Abstraktion, beispielsweise Java 3D. Da der größte Teil des Codes automatisch erstellt wird, können Veränderungen an OpenGL auch rasch zu JOGL hinzugefügt werden.

Fanden Sie diesen Artikel nützlich?
4 von 4 Lesern fanden diesen Artikel nützlich.

Aktuelle Job-Angebote

ZDNet.de Live

IBM ...

IBM to fix David Jones' online sales: t.co/...

10.02.12, 07:11 von zdnetaustralia
AFL ...

AFL fights Optus for its copyright: t.co/...

10.02.12, 07:04 von zdnetaustralia
Satel ...

Satellite-hating Libs blow policy free kick: t.co/...

10.02.12, 06:59 von zdnetaustralia
Watch ...

Watch as the world's largest screen, IMAX, be replaced t.co/...

10.02.12, 06:26 von zdnetaustralia
One ...

One podcast with the lot: t.co/...

10.02.12, 06:14 von zdnetaustralia
Optus ...

Optus fibre cable cut in ACT: t.co/...

10.02.12, 05:52 von zdnetaustralia
NAB ...

NAB glitch leaves customers cashless t.co/...

10.02.12, 05:41 von zdnetaustralia
Conro ...

Conroy sets spectrum renewal prices t.co/...

10.02.12, 05:25 von zdnetaustralia
Roll ...

Roll up, roll up! Oracle digest Taleo t.co/...

10.02.12, 05:10 von ZDNet
World ...

World's largest IMAX gets a new screen: photos t.co/...

10.02.12, 05:05 von zdnetaustralia
India ...

India govt Web sites defaced. t.co/...

10.02.12, 05:05 von zdnetasia
Ode ...

Ode to manual typewriters t.co/...

10.02.12, 04:55 von ZDNet
Telco ...

Telcos abandoning unlimited data. t.co/...

10.02.12, 04:51 von zdnetasia
MD of ...

MD of RIM Australia, Adele Beachley, resigns t.co/...

10.02.12, 04:49 von zdnetaustralia
Telst ...

Telstra will move 4.2 million BigPond customers onto Microsoft's Windows Live email service: t.co/...

10.02.12, 04:13 von zdnetaustralia
New ...

New CEO pledges 'painful' steps to fix Sony. t.co/...

10.02.12, 03:39 von zdnetasia
Eolas ...

Eolas loses landmark Web patent case t.co/...

10.02.12, 03:35 von ZDNet
Local ...

Local companies claim that NBN's satellite contracts skip Australia: t.co/...

10.02.12, 03:32 von zdnetaustralia
We'll ...

We'll build it, but will they come? t.co/...

10.02.12, 02:37 von zdnetaustralia
Suthe ...

Sutherland Shire Council is locked in a stalemate with Optus over the $110,000 cost of a cable replacement t.co/...

10.02.12, 02:09 von zdnetaustralia