So lassen sich mit Java-3D Grafikanwendungen erstellen

Seit Version 1.2 wird Java-3D im Rahmen des Java Community Process entwickelt. Java-3D setzt auf OpenGL und Direct3D auf. Gleichzeitig ist es eine Schnittstelle, die Grafikprogrammierung mittels eines echten objektorientierten Konzepts ermöglicht. Darüber hinaus bietet Java-3D auch umfangreiche Unterstützung für 3D-Sound.

Zur Konstruktion einer Szene wird ein Szenengraph eingesetzt. Er repräsentiert die darzustellenden Objekte. Ein solcher Szenengraph ist wie ein Baum strukturiert, der eine Reihe von Elementen enthält, die zur Anzeige der Objekte notwendig sind.

So funktioniert die 3D-Welt

Der Aufbau von Java-3D unterscheidet sich deutlich von anderen gängigen 3D-Grafik-APIs wie OpenGL oder Direct3D. Dies sind prozedurale Low-Level-APIs, die eng mit der 3D-Hardware verbunden sind. Bei Java-3D richtet man hingegen sämtliche Grafikobjekte (auch Geometrieobjekte genannt) in einem sogenannten Szenengraphen ein. Dieses hierarchische Modell enthält alle Informationen über die darzustellenden Objekte und ihre Bearbeitung. Anschließend wird der Szenengraph zum Rendern an Java-3D übergeben. Für die Darstellung der Daten muss keinerlei Code geschrieben werden – das erledigt Java-3D. Mittels der zahlreichen leistungsfähigen integrierten Werkzeuge kann der Entwickler gleich auf einer höheren Ebene programmieren.

Java-3D nutzt dabei jede 3D-Beschleunigung, die die Grafikkarte bereitstellt. Letztlich erzeugt Java-3D OpenGL-Aufrufe in einer JNI-Schicht, die von der Grafikkarte beschleunigt werden können. Mit OpenGL beschleunigte Karten sind inzwischen in vielen Rechnern Standard. Deshalb sollten die Java-3D-Programme in der Regel hardwarebeschleunigt sein.

Bei dreidimensionalen Koordinaten (x,y,z) gibt die z-Komponente die Entfernung zum Betrachter an. Java-3D verwendet z-Werte, um nicht sichtbare Flächen verdeckter Objekte zu entfernen. Die z-Werte des roten Ringes im folgenden Bild sind klein, weil er sich dicht am Betrachter befindet. Er verdeckt Teile des blauen Ringes, wenn die z-Werte der beiden Ringe während des Renderns verglichen werden.


Page: 1 2 3 4 5

ZDNet.de Redaktion

Recent Posts

Agentforce Testing Center: Management autonomer KI-Agenten

Mit dem Tool können Unternehmen KI-Agenten mithilfe synthetisch generierter Daten testen, um präzise Antworten und…

19 Stunden ago

NiPoGi AM06 PRO Mini PC: Perfekte Kombination aus Leistung, Flexibilität und Portabilität

Kostengünstiger Mini-PC mit AMD Ryzen 7 5825U-Prozessor, 16 GB Arbeitsspeicher (RAM) und 512 GB SSD.

1 Tag ago

Black Friday: Vorsicht vor schädlichen QR-Codes

Bösartige QR-Codes, die per E-Mail versendet werden, eignen sich sehr gut, um Spam-Filter zu umgehen.

4 Tagen ago

Black Friday: Zahl der ominösen Shopping-Websites steigt

Unsichere Websites und Phishing-Mails in Verbindung mit Black Friday können kauffreudigen Konsumenten zum Verhängnis werden.

4 Tagen ago

SmokeBuster bekämpft SmokeLoader

Malware SmokeLoader wird weiterhin von Bedrohungsakteuren genutzt, um Payloads über neue C2-Infrastrukturen zu verbreiten.

4 Tagen ago

Taugen Kryptowährungen als Unterstützer der Energiewende?

Bankhaus Metzler und Telekom-Tochter MMS testen, inwieweit Bitcoin-Miner das deutsche Stromnetz stabilisieren könnten.

5 Tagen ago