Select your language

Globe Viewer Outlook

GlobeViewer development started more than 5 years ago. I am currently working on a complete relaunch of the project so that the display quality of the 3D tiles is significantly improved. Here is a brief look at the current prototype and the changes that will later be available in the app. The next version will probably not be released until 2024, so please be patient. You can read below why this is taking so long.

Thank you for your understanding!

More memory available

Since GlobeViewer development began in 2017, (mobile) technology has evolved significantly. At that time there was very little main memory (approx. 250 MB) available for apps on the devices. If this limit was exceeded, the app was immediately terminated by the operating system, which severely limited the number and resolutions of textures that could be loaded simultaneously in the app.

From that time came the definitions for available texture sizes on the 3D tiles, so each tile only allowed a 512x512 pixel texture for elevation coloring and a 1,024x1,024 pixel texture for the surface normal map. The maximum for textures today is 4,096x4,096 pixels - only a few of them could be loaded back then before there were big problems. New texture formats (which can also be viewed compressed on mobile devices) and more memory available for apps now allow texture sizes to be redefined.

Better screen resolutions and more performance

The first iPad generations came out with a 1,024x768 screen resolution. Today almost all devices work with at least FullHD or 4K resolutions and more. In order to be able to calculate these pixel quantities fluently, the computing power has also increased significantly. This means that significantly more effects and more complex shaders can be used for the graphic display today than back then. However, the performance is distributed very differently in the many available device classes. So there will have to be a gradation of the display in the app in order to keep the app running on as many devices as possible.

Current map data with more details

Even the earth has changed, you can see this most clearly on the coast line. Here is an example of how e.g. the coastline near Seol has changed due to land reclamation in the last 5 years. So it's definitly time to update the maps.

Shoreline comparison from 2018 to 2023 near Seol

The redefinition of the textures also offers the opportunity to accommodate more information on the textures. So far, for example, rivers are missing in the height textures. It makes a big visual difference whether a river reflects light or not:

Visibility of waterways through different gloss settings

In the same way, roads, borders and e.g. land use can also be accommodated in the textures. These can then simply be superimposed on the elevation map.

Display of different OpenStreetMap data layers

Division of the map

The map is divided into 22,912 tiles. So that meaningfully related areas can be processed together, there is a division into zones. The first zone is Europe and is currently being edited.

Overview of the already calculated tiles in Europe

Region 1: Europe & Course of the water (Enlarged: Bibione Pineda/Venice)

Development steps to the next version

  1. Adjust elevation data
    1. ASTER elevation data is already available as 3,601x3,601 data. These are upscaled to 4,096x4,096.
  2. Create data layer (data export from OpenStreetMap via QGIS rendered as 4,096x4,096 textures) - DONE
    1. Waterways and shorelines
    2. Borders
    3. Roads and railway lines
    4. Development
    5. Land use (agriculture, forestry, towns)
  3. Shader definition and texture creation - DONE
    1. The shader for display in Unity is set
    2. The textures are then brought into the required form
  4. Import into Unity and processing
    1. Determination of the Unity version used: Currently testing the 2023.3.0b2 BETA (Jan. 2024)
    2. Specification of texture sizes per platform (probably as 2,048x2,048 due to disk space and download times)
  5. Export addressables from Unity3D
    1. Export test
    2. Full export and server upload
  6. Version building
    1. Loading the new addressables from the server
    2. Switching the UI display options to the new shader

At the same time, a working prototype must always be available to check the data import. You can see which raw data are already available as textures in the following table.

 

Texture creation overview

25.07.2023 - 12.11.2023

Tiles
Borders Buildings CityAreas Forest Landuse Railroads Roads Water
Group A 6900                
Europe 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 c c c c c c c c
China2 1940 c c c c c c c c
Indonesia 1038 c c c c c c c c
Japan 152 c c c c c c c c
NewZealand 69 c c c c c c c c
Group C 6738                
NorthAmerica1 1544 c c c c c c c c
NorthAmerica2 1323 c c c c c c c c
NorthAmerica3 1080 c c c c c c c c
NorthAmerica4 815 c c c c c c c c
PacificIslands 181 c c c c c c c c
SouthAmerica1 781 c c c c c c c c
SouthAmerica2 1014 c c c c c c c c
Group D 3810                
Antarctica1 998 - - - - - - - c
Antarctica2 1051 - - - - - - - c
Antarctica3 1761 - - - - - - - c
  • x = working on
  • c = finished
  • - = not needed

Texture optimization

In this step, two composite textures are created from the previously created individual textures. The color channels are put together in such a way that we can accommodate the maximum amount of information in the available color channels. This means the amount of data to be transferred remains manageable. We have 4 color channels (RGBA) available per texture.

  • Color texture
    • The color texture receives the color gradients of the height data in RGB. All water surfaces and the coastline are blended into this color texture. Since land use can only belong to one group (urban area, agriculture, forest use), all three groups are stored in the alpha channel with different brightness levels. The shader used can then separate the three groups in the software.
  • Structural texture
    • The remaining data (roads, railways, borders and buildings) can overlap. Therefore, these textures must be saved as individual layers. Thus, each layer is placed in a channel of the structure texture.
17.11.2023 - 22.12.2023 Tiles
Color Textur (RGB: Height map + Water, A: CityAreas + Forest + Landuse) Structure Textur (RGBA: Roads + Buildings + Borders + Railroads)
Group A 6900    
Europa 1454 c c
Africa1 1940 c c
Africa2 1095 c c
Russia1 1390 c c
Russia2 1021 c c
Group B 5464    
Australia 903 c c
China1 1362 c c
China2 1940 c c
Indonesia 1038 c c
Japan 152 c c
NewZealand 69 c c
Group C 6738    
NorthAmerica1 1544 c c
NorthAmerica2 1323 c c
NorthAmerica3 1080 c c
NorthAmerica4 815 c c
PacificIslands 181    
SouthAmerica1 781 c c
SouthAmerica2 1014 c c
Group D 3810    
Antarctica1 998 - -
Antarctica2 1051 - -
Antarctica3 1761 - -
  • x = working on
  • c = finished
  • - = not needed