Import map data to voxel-like mesh


I decided to learn a bit of the Blender Python API and recover some old scripts I had. So, I’m finishing a script that reads raster map data from to Blender. The script reads data from a simple but common raster format (ASCII raster), creates a voxel-like mesh with the data, adds a uvmap and a texture image. When adding several rasters, it adds shapekeys allowing to animate mesh transitions.

Here is an example with Pico Island, Azores (altitude data from EU_DEM v1.1).

Animation (from base mesh to altitude):

The script adds a grey scale texture image with scaled data that can be used to add color to the mesh:

Some close-up:

I did previous experiments with displacement and, although it generates beautiful meshes, it has the terrain look and I couldn’t find a way to avoid some color bleeding to the neighbor pixels. This voxelized look was what I was looking for and the uvmap allows a excelent control of the coloring.

Preparing the raster data still takes some time in a GIS. But the ASCII raster format is quite easy, do I guess it will be very adaptable to other purposes than mapping.

Maybe there is an easier way to get this, but I’m having fun with the project! I will upload the code when I feel it is ready.

1 Like