Nachdem ich meinen Landschaftsgenerator abgeschlossen hatte, hat mich das Ergebnis der Vorschau nicht zufrieden gestellt. Jedes Mal PovRay zu starten, nur um eine 3D-Ansicht zu sehen war einfach zu unbefriedigend. Zeit, sich einmal mit Java3D zu beschäftigen...
Bevor ich das allerdings tat, probierte ich eine selbstgemachte 3D-Visualisierung aus. Den Code, den ich als Grundlage benutzte, hatte ich im Netz gefunden. Nach der Inbetriebnahme stellte sich aber relativ schnell heraus, daß dieser Code meinen Anforderungen nicht genügte: der Ressourcenhunger war enorm.
Also analysierte ich den Code und stellte einige Stellen fest, an denen man ansetzen konnte: Es lief im großen und ganzen darauf hinaus, daß jede Menge neuer Objekte erzeugt wurden: Bei jeder mathematischen Operation mit 3D-Vektoren wurde ein neues Objekt erzeugt, das das Ergebnis enthielt. Bei der 3D-Visualisierung sind unheimlich viele solcher mathematischen Operationen durchzuführen. Damit schwoll der Aufwand für Erzeugung neuer Objekte und Garbage Collection bereits erzeugter Objekte ab einer gewissen Auflösung des Höhenfeldes derart an, daß ich eine völlig neue Fehlermeldung der Java-Laufzeitumgebung kennenlernte: Es ist offensichtlich so, daß das Verhältnis der Zeit, die im Garbage Collector verbracht wird zu der Zeit, die die Laufzeitumgebung mit der Abarbeitung des eigentlichen Programmes zubringt, überwacht wird. Wird es zu ungünstig - lies: bringt die Laufzeitumgebung zu viel Zeit mit der Speicherverwaltung zu, wird das Programm mit einer Exception beendet.
Zeit, sich von der eigenen Garagen-Bastellösung zu verabschieden und den Profi-Werkzeugen zuzuwenden... Auch hierbei hatte ich wieder Hilfe aus dem Netz. Damit entstand die Visualisierung unter Zuhilfenahme von Java3D - viel professioneller, wie man mir nach Betrachtung der Screenshots sicher zustimmen wird:
27.04.2023
Ich fand neulich einen Artikel, den ich als äußerst interessant einstufte und mit dem ich mich ein wenig näher beschäftigte um ihn nachzuvollziehen.
24.11.2018
Das letzte Mal, als ich über Vor- und Nachteile der Durchführung mathematischer Berechnungen mit verschiedenen Datentypen schrieb, vernachlässigte ich einen Aspekt, dessen Einfluss und Wichtigkeit von der benutzten Programmiersprache und konkreten Implementierung abhängt:
05.11.2017
Auf meinen Fahrten von und zur Arbeit schweife ich hin und wieder gedanklich ein wenig ab. Hier das Ergebnis meiner jüngsten Gedankenexpedition...
01.10.2017
Und wieder einmal habe ich mich in die Untiefen der Erzeugung von Daten begeben, die man mit einiger Toleranz als au der Ferne aufgenommene geographische Features bezeichnen könnte
31.07.2015
Hier mal ein kurzes Video zur Datenintegration mit dWb+
17.07.2013
Nachdem ich ein wenig mit meinem Landschaftsgenerator und der neuen Visualisierung herumgespielt hatte, bemerkte ich, daß dabei Artefakte auftraten - und zwar ausschließlich unter Windows. Dem muß man auf den Grund gehen...
Vorhaben 2020
03.01.2020
Genau wie letztes Jahr habe ich auch dieses Jahr wieder ein "Listche" verfasst, um mir all die interessanten Vorhaben zu notieren, die ich mit mittlerem zeitlichen Horizont anzugehen gedenke.
Weiterlesen...Android Basteln C und C++ Chaos Datenbanken Docker dWb+ ESP Wifi Garten Geo Go GUI Gui Hardware Java Jupyter Komponenten Links Linux Markdown Markup Music Numerik OpenSource PKI-X.509-CA Python QBrowser Rants Raspi Revisited Security Software-Test sQLshell TeleGrafana Verschiedenes Video Virtualisierung Windows Upcoming...
In eigener Sache...
Weiterlesen...Nach dem ersten Teil von mir als interessant eingestufter Vorträge des Chaos Communication Congress 2024 hier nun die Nachlese
Weiterlesen...Nach dem So - wie auch im letzten Jahr: Meine Empfehlungen für Vorträge vom Chaos Communication Congress 2024 - vulgo: 38c3:
Weiterlesen...Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.
Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.
Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...
PS: Meine öffentlichen Codeberg-Repositories findet man hier.