Globe Viewer Ausblick
Die GlobeViewer-Entwicklung begann vor mehr als 5 Jahren. Aktuell arbeite ich an einer kompletten Neuaufsetzung des Projekts, damit die Darstellungsqualität der 3D-Kacheln erheblich verbessert wird. Anbei ein kurzer Einblick in den aktuellen Prototyp und die Änderungen, die dann später in der App verfügbar sein werden. Vermutlich wird die nächste Version erst im Jahr 2024 erscheinen, daher bitte ich um etwas Geduld. Warum dies so lange dauert, können Sie unten lesen.
Vielen Dank für Ihr Verständnis!
Mehr Speicher verfügbar
Seit dem Beginn der GlobeViewer-Entwicklung im Jahr 2017 hat sich die (mobile) Technik erheblich weiterentwickelt. Damals stand für Apps auf den Geräten nur sehr wenig Hauptspeicher (ca. 250 MB) zur Verfügung. Bei Überschreitung dieser Grenze wurde die App sofort vom Betriebssystem beendet, wodurch die Anzahl und die Auflösungen der Texturen, die in der App gleichzeitig geladen werden konnten, erheblich eingeschränkt wurde.
Aus dieser Zeit stammten die Definitionen für verfügbare Texturgrößen auf den 3D-Kacheln, sodass jede Kachel nur eine 512x512 Pixel große Textur für die Höheneinfärbung und eine 1.024x1.024 Pixel große Textur für die Oberflächen-NormalMap ermöglichte. Das Maximum für Texturen liegt heute bei 4.096x4.096 Pixeln - davon konnten damals nur wenige geladen werden, bevor man große Probleme bekam. Neue Texturformate (die auch auf Mobilgeräten komprimiert angezeigt werden können) und mehr verfügbarer Hauptspeicher für Apps, ermöglicht jetzt eine Neudefinition der Texturgrößen.
Bessere Bildschirmauflösungen und mehr Leistung
Die ersten iPad-Generationen kamen mit einer 1.024x768er Bildschirmauflösung heraus. Heute arbeiten fast alle Geräte mit mindestend FullHD- oder 4K-Auflösungen und mehr. Um diese Pixelmengen auch flüssig berechnen zu können ist auch die Rechenleistung ebenfalls erheblich angestiegen. Somit können heute deutlich mehr Effekte und aufwendigere Shader für die graphische Darstellung verwendet werden als damals. Allerdings ist die Leistung bei den vielen verfügbaren Geräteklassen sehr unterschiedlich verteilt. Es wird also eine Abstufung der Darstellung in der App geben müssen, um die App auf möglichst vielen Geräten lauffähig zu halten.
Aktuelle Kartendaten mit mehr Details
Auch die Erde hat sich verändert, am stärksten sieht man dies am Küstenverlauf. Hier ein Beispiel, wie sich z.B. die Küstenlinie in der Nähe von Seol durch Landgewinnung in den letzten 5 Jahren verändert hat. Es wird also höchste Zeit, die Karten zu aktualisieren.
Durch die Neudefinition der Texturen bietet sich auch die Gelegenheit mehr Informationen auf den Texturen unterzubringen. So fehlen z.B. bislang Flüsse in den Höhentexturen. Es macht einen optisch großen Unterschied, ob ein Fluss das Licht reflektiert oder nicht:
Genauso können auch Straßen, Grenzen und z.B. die Landnutzung mit in den Texturen untergebracht werden. Diese können dann zur Höhenkarte einfach eingeblendet werden.
Aufteilung der Karte
Die Karte ist in 22.912 Kacheln aufgeteilt. Damit sinnvoll zusammenhängende Bereiche gemeinsam verarbeitet werden, gibt es eine Aufteilung in Zonen. Die erste Zone ist Europa und wird gerade bearbeitet.
Region 1: Europa & Wasserverlauf (Vergrößert: Bibione Pineda/Venedig)
Entwicklungsschritte zur nächsten Version
- Höhendaten anpassen
- Die ASTER-Höhendaten liegen bereits als 3.601x3.601 Daten vor. Diese werden auf 4.096x4.096 hochskaliert.
- Datenlayer erzeugen (Datenexport von OpenStreetMap über QGIS als 4.096x4.096 Texturen gerendert)
- Wasserwege und Küstenlinien
- Grenzverläufe
- Straßen und Eisenbahnlinien
- Bebauung
- weitere Layer?
- Shaderdefinition und Texturerstellung
- Es wird der Shader für die Darstellung in Unity festgelegt
- Im Anschluss werden dann die Texturen in die benötigte Form gebracht
- Import in Unity und Verarbeitung
- Festlegung der Texturgrößen pro Plattform (vermutlich als 2.048x2.048 wegen Speicherplatz und Downloadzeiten)
- Export der Addressables aus Unity3D
- Test des Exports
- Komplett-Export und Server-Upload
- Versionsbau
- Laden der neuen Addressables vom Server
- Umstellen der UI-Darstellungsoptionen auf den neuen Shader
Parallel dazu muss immer ein funktionsfähiger Prototyp verfügbar sein, um den Datenimport zu überprüfen. Welche Rohdaten bereits als Texturen vorliegen, können Sie in der folgenden Tabelle sehen.
Übersicht über die Texturerstellung
25.07.2023 - 27.09.2023 | Tiles | Borders | Buildings | CityAreas | Forest | Landuse | Railroads | Roads | Water |
Group A | 6900 | ||||||||
Europa | 1454 | c | c | c | c | c | c | c | c |
Africa1 | 1940 | c | c | c | c | c | c | c | c |
Africa2 | 1095 | c | c | c | c | c | c | c | c |
Russia1 | 1390 | c | c | c | c | c | c | c | c |
Russia2 | 1021 | c | c | c | c | c | c | c | c |
Group B | 5464 | ||||||||
Australia | 903 | c | c | c | c | c | c | c | c |
China1 | 1362 | x | x | c | c | c | c | c | c |
China2 | 1940 | ||||||||
Indonesia | 1038 | ||||||||
Japan | 152 | ||||||||
NewZealand | 69 | ||||||||
Group C | 6738 | ||||||||
NorthAmerica1 | 1544 | ||||||||
NorthAmerica2 | 1323 | ||||||||
NorthAmerica3 | 1080 | ||||||||
NorthAmerica4 | 815 | ||||||||
PacificIslands | 181 | ||||||||
SouthAmerica1 | 781 | ||||||||
SouthAmerica2 | 1014 | ||||||||
Group D | 3810 | ||||||||
Antarctica1 | 998 | - | - | - | - | - | - | - | |
Antarctica2 | 1051 | - | - | - | - | - | - | - | |
Antarctica3 | 1761 | - | - | - | - | - | - | - |
- x = In Arbeit
- c = Fertig
- - = nicht notwendig
Alle Daten der Gruppe Europa sind inzwischen vorbereitet. Sehen Sie hier alle Gebäude aus OpenStreetMaps.