Suche Vergleich

Status
Nicht offen für weitere Antworten.

Evolver

Bekanntes Mitglied
Ich habe jetzt schon ein bisschen gegooglt, aber keinen so rechten Vergleich zwischen den einzelnen Möglichkieten gefunden, gescheit Grafik auf den Bildschirm zu bekommen. Also ich wollte mich mal wieder an ein Spielchen ranwagen, musste jetzt aber nach einigen konzepthaften Zeilen Code feststellen, dass normales Java2D (awt) zu lahm ist, wenn man mehrere hundert Tiles (mit Transparanz) auf den Bildschirm bringen muss.

Nach ein bisschen googln bin ich mehrfach auf die Meinung gestoßen, man solle zu JOGL greifen. Könnt ihr das bestätigen, hat schon jemand (gute) Erfahrung damit im 2D-Bereich gemacht? Java3D wäre ja noch eine Alternative. Kann mir jemadn vor und Nachteile der beiden im 2D-Bereich nennen, welche Alternativen bleiben mir sonst noch?
 
S

Spacerat

Gast
Ich sag', eindeutig JOGL! JOGL ist (bis auf ein Paar Kleinigkeiten) eine direkte Umsetzung von OpenGL. Deswegen kann man bei JOGL (was man bei Java3D nicht kann) auch auf Ressourcen (z.B. Tutorials) zurückgreifen, die sich mit OpenGL in anderen Sprachen (z.B. VB oder C++) befassen. Eine Anlaufstelle für GL-Grundlagen sind z.B. die Neon Helium Tutorials
 

Evolver

Bekanntes Mitglied
Naja, das lernen ist nicht so das Problem, ich habe schon früher als ich noch C++ programmiert habe OpenGL eingesetzt, das sollte es ja nicht so schwer sein, wieder rein zu kommen.
 
S

Spacerat

Gast
Was in JOGL allerdings fehlt, sind 3D-Fonts. Zwar gibt es den TextRenderer aber der stellt auch nur Texturfonts zur Verfügung. Ich habe mir für die NeHe-Tuts in Anlehnung an "wgl" 'ne eigene erweiterung geschaffen, die auch 3D-Fonts unterstützt (ZIP-Archiv).
Na denn... wünsche frohes Schaffen.
 
S

Spacerat

Gast
Nachteile von Java3D von rein technischer Natur sind mir nicht bekannt. Ich verwende es halt nicht bzw. nicht mehr. Bis zu der Version (1.5.0 beta von 2005) mit der ich noch etwas gemacht hatte konnte man dort z.B. noch keine Bumpmaps erstellen. Und wenn ich mir gerade den weiteren Verlauf an Versionsnummern (1.5.1) ansehe, scheinen die bei Java3D nicht wirklich voran zu kommen. Ist wohl inzwischen ein totes Gleis.
Der gravierendste Nachteil von Java3D dürfte es sein, das man bei Problemen stets auf Java3D spezifische Communities angewiesen ist, welche weitaus seltener sein dürften als vergleichbare OpenGL Communities. Man muss also nicht strickt nach "JOGL" suchen, sondern kann auch "OpenGL" verwenden. Bei "Java3D" ist man da doch sehr eingeschränkt.
 
Zuletzt bearbeitet von einem Moderator:

Marco13

Top Contributor
Hm. Der Vergleich zwischen JOGL und Java3D ist ungefähr wie der vergleich zwischen einem Traktor und einem Formel-1-Rennwagen (nur sinngemäß, ohne dort irgendwelche Zuordnungen implizieren zu wollen). Man kann nicht sagen, was "besser" ist - es kommt auf das Ziel, und das Anwendungsbebiet an.

JOGL ist - wie der Name schon sagt - eine Bibliothek für OpenGL unter Java. Java3D ist eine komplette Szenegraph-API. Wenn man eine Anwendung schreiben will, bei der man eine OBJ-Datei laden und anzeigen kann, und bei der bei Mausklicks auf die verschiedenen Teile des Objektes unterschiedliche Sounds abgespielt werden sollen, ist das mit Java3D vermutlich auch ohne detaillierte Kenntnisse in ... vielleicht ... (GANZ grob geraten) in 1-2 Wochen mit 2500 Zeilen Code erledigt. Wenn man das NUR mit JOGL machen wollte, könnte man da jeweils nochmal eine 0 dranhängen, und sich mit VertexBufferObjecst, GL-extensions & Co. rumschlagen...

So ein Argument wie das mit den BumpMaps ist im Prinzip richtig: Neuerungen (besonders hardwarnahe und sich schnell verändernde) brauchen eine Weile, bis sie über ein JSR ihren Weg in eine neuen Java3D-Release finden - bei JOGL sind die in kürze(st/er)er Zeit verfügbar. Allerdings gehen die Möglichkeiten auch mit Java3D inzwischen schon sehr weit - immerhin werden schon Shader unterstützt, mit denen man im Prinzip ja "alles" machen kann.

Der Sprung von Java 1.4 auf 1.5 war schon ziemlich dramatisch. Die update-Intervalle ist dort vielleicht etwas länger, aber das hat schon seine Gründe...
 

Evolver

Bekanntes Mitglied
JOGL ist - wie der Name schon sagt - eine Bibliothek für OpenGL unter Java. Java3D ist eine komplette Szenegraph-API. Wenn man eine Anwendung schreiben will, bei der man eine OBJ-Datei laden und anzeigen kann, und bei der bei Mausklicks auf die verschiedenen Teile des Objektes unterschiedliche Sounds abgespielt werden sollen, ist das mit Java3D vermutlich auch ohne detaillierte Kenntnisse in ... vielleicht ... (GANZ grob geraten) in 1-2 Wochen mit 2500 Zeilen Code erledigt. Wenn man das NUR mit JOGL machen wollte, könnte man da jeweils nochmal eine 0 dranhängen, und sich mit VertexBufferObjecst, GL-extensions & Co. rumschlagen...

Also ich schätze mal dieser Vorteil verliert sich, wenn man nur eine 2D-Anwendung als Ziel hat und die 3D-Bibliothek somit nur zur Ausgabe texturierter Quadrate "mißbraucht". (?)
 

Marco13

Top Contributor
Ziemlich sicher, ja. Da kann man mit JOGL sicher einfacher, dedizierter (ggf. effizienter) und kompakter was basteln, weil man ja garkeine Szenegraphen, View-Managemen und komplexen Geometrien braucht....
 

Landei

Top Contributor
Eine andere Java-Bindung für OpenGL ist lwjgl. Aber ich habe keine Ahnung, wie die sich von JOGL unterscheidet.
 
S

Spacerat

Gast
LWJGL-Lightweight Java Game Library...
Das ist, wenn man so will, ein Zusammenschluss von JOGL und JOAL. Obgleich JOGL dort ein wenig anders implementiert zu sein scheint.
 

EgonOlsen

Bekanntes Mitglied
LWJGL-Lightweight Java Game Library...
Das ist, wenn man so will, ein Zusammenschluss von JOGL und JOAL. Obgleich JOGL dort ein wenig anders implementiert zu sein scheint.
JOGL versucht, OpenGL einen objektorientierten Anstrich zu verpassen. LWJGL tut dies nicht, dort ist alles statisch. Das ist noch etwas näher an "normalem" OpenGL dran. Was man lieber mag, muss man selber entscheiden. Ich verwende LWJGL und kann es guten Gewissens empfehlen.

Edit: Vielleicht als Alternative zu reinem LWJGL/JOGL einen Blick wert: Slick - 2D Game Library based on LWJGL
 

Evolver

Bekanntes Mitglied
Nun ich denke meine Entscheidung ist zu gunsten JOGL gefallen. Ich werde mich erstmal da ein bisschen einarbeiten. Danke für die Antworten.
 

Evolver

Bekanntes Mitglied
Ich bin gerade an einem Punkt, der mich verwundert. Laut Website setzt JOGL doch auf OpenGL 2.0 auf!? Nun wollte ich eine Textur laden, deren Seitenlängen nicht 2^n ist und es funktioniert nicht. Aber unterstützt OpenGL nicht seit Version 2.0 Texturen beliebiger Größe?
 

Marco13

Top Contributor
Soweit ich weiß ist das eine der oben schon angesprochenen GL-Extensions, die nicht von allen Grafikkarten unterstützt werden (im Zweifelsfall ist die von der Grafikkarte unterstützte OpenGL-Version der beschränkende Faktor ... wenn die es nicht kann, kann sie es auch nicht, obwohl JOGL es vielleicht könnte....)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Timo_neu_in_java Suche etwas einfaches für Anfänger Spiele- und Multimedia-Programmierung 6
I Minecraft Suche Plugin Developer für Minecraft Netzwerk! Spiele- und Multimedia-Programmierung 2
V Suche 2D Engine Spiele- und Multimedia-Programmierung 11
lord239123 suche Graphiker für ein Pokemon-Spiel Spiele- und Multimedia-Programmierung 6
M Minecraft Suche Java Programmierer (für Minecraft) Spiele- und Multimedia-Programmierung 2
F Suche Tutorial zu "purem" OpenGL mit Java Spiele- und Multimedia-Programmierung 10
J Suche 3D Programm für jMonkeyEngine Spiele- und Multimedia-Programmierung 5
O Suche Tutorial zum Aufbau von großen Spielen(mit Multiplayer über Netzwerk...) Spiele- und Multimedia-Programmierung 3
M Suche Schach Images Spiele- und Multimedia-Programmierung 5
N suche ein gutes Media Framework Spiele- und Multimedia-Programmierung 15
J Suche Java Spiele Editor! Spiele- und Multimedia-Programmierung 2
N suche Tutoriel Spiele- und Multimedia-Programmierung 5
S [SUCHE] 2D-Spieleprogrammierung (Autor: Quaxli) zum Download Spiele- und Multimedia-Programmierung 2
hdi Suche Partner für Hobby-Projekt: 2D-Strategie-Spiel Spiele- und Multimedia-Programmierung 86
J Suche einfaches OpenSource Java-Spiel Spiele- und Multimedia-Programmierung 2
G Suche passende Game api Spiele- und Multimedia-Programmierung 9
P Suche Leute für ein Hobby-Projekt (Browser Game) Spiele- und Multimedia-Programmierung 4
G suche das tutorial für den space invaders Spiele- und Multimedia-Programmierung 2
Z Suche Tutorial zum Einstieg in OpenGl mit Java (JOGL) Spiele- und Multimedia-Programmierung 2
U Suche Bildbetrachter Library Spiele- und Multimedia-Programmierung 6
X Wonach suche ich? Spiele- und Multimedia-Programmierung 5
M suche Tipps fürs Spielfeld bei Monopoly Spiele- und Multimedia-Programmierung 2
M Suche Games tutorial mit JOGL Spiele- und Multimedia-Programmierung 8
P Suche Tutorial für Multiplayer Spiele- und Multimedia-Programmierung 2
Noar Suche gutes Buch Spiele- und Multimedia-Programmierung 5
C Suche weiteren Mitarbeiter für "The Secret of Trilar&qu Spiele- und Multimedia-Programmierung 5
I Vergleich von Java3D und OpenGL Spiele- und Multimedia-Programmierung 17

Ähnliche Java Themen

Neue Themen


Oben