Owen Powell creates both beautiful and accurate digital 3D maps using Blender and GIS data. Today, he explains his workflow in great detail.
I am a 36-year-old GIS Analyst/Cartographer living in the UK. I studied Fine Art at art school, and did a postgraduate course in 3d modeling and animation using Maya. A friend of mine got me into Blender a couple of years ago and I haven’t been able to put it down since.
Following on from the revolution in open source software, open data has revolutionised the Geographic Information Systems (GIS) industry. As well as crowd sourced mapping data such as OpenStreetMap, countries such as the UK have been driving innovation and transparency of information by releasing government sourced data to the public, including a wealth of map data.
As a result an archive of incredibly detailed digital terrain models have been released by the Environment Agency and Natural Resources Wales, captured from aerial LIDAR. Data such as this would have cost thousands only a couple of years ago, and to now have access to such a large amount of quality data inspires me to make things with it.
One of my recent images of Beddgelert in North Wales, combines lidar and topographic data from the Ordnance Survey. (Beddgelert, meaning ‘Gelert’s Grave’ gets its name from a 13th century tribute by a Prince to his dog)
The model itself is fairly simple, and a scale representation of the source map data. Most of the work is done in Blender with Cycles materials, lighting and compositing. The main light in the scene is a sun map, with a cooler area lamp plus a light just to reflect on the glossy water.
The main material consists of a diffuse colour gradient based on height, and a glossy shader applied using a texture map to control the mix factor.
In a similar way, I use a texture of the Ordnance Survey woodland layer to control the trees, made using a hair emitter. The scene has 200,000 instances of a single tree, with a colour ramp to vary the colour, and a random size.
I used FME to process the ascii lidar and shapefiles into 3d features and textures. The surface is a triangulated mesh, with roads, railways and buildings draped on it, then extruded. Being part of a single workflow, all features and images are clipped exactly to the extent of the surface, and are to scale.
FME is not free but is worth its weight in gold, as it allows you to integrate data from over 345 applications, web services, and file formats. The FME authoring environment is similar to the node based Cycles interface, but each transformer performs a different function such as clipping, spatial queries (intersect, contains, etc.) and coordinate transformations. Other approaches include the Blender GIS add-on and mesh displacement but this is my tool of choice as it allows me to combine multiple sources of data, create textures and automate a single workflow rather than countless steps.
Finally, I use the compositor in Blender to merge a mist pass and background with the render.
You can see more of my work on my blog and follow me on Twitter @owenjpowell
Excellent. Viewed the blog and there are some stunning works.
FME looks like an amazing product, but would it be beyond the scope of a 'hobbyist'? (particularly a poor one!)
It's funny because I just recently gave an internal presentation on using FME in my company (a web GIS one in which I'm 3D GIS specialist, using Blender among other software) and I pointed out at similarities between FME nodes and Blender ones.
As for open source software similar to FME in my opinion QGIS has a quite powerful tools for geoprocessing different formats of data (and a lot of addons, eg. for exporting GIS data to webGL/three.js format: https://plugins.qgis.org/plugins/Qgis2threejs/), there is also GeoKettle (http://www.spatialytics.org/projects/geokettle/) which is supposed to be open source alternative to FME, but I didn't test it thoroughly.
Theres a handful of people using Blender to make maps, certainly for nice looking hillshades but the potential is there for more complex visualisations, especially when using scripting or FME. One of the limitations of Blender for GIS is the lack of attribute data, but if you can find a format like .OBJ that supports styles/materials then some of the work can be preprepared.
I did come across across someone else using FME and Blender, I'd be surprised if there weren't a few more out there!
Agreed with you.
Because maps is for great functionality not just visualized.
Hi, do you provide 3D terrain rendering as a professional service. ? I might need such service in project doing these days. Please send me more Info via email
Thank you! Yes FME is an incredibly powerful piece of software, an ETL (extract, transform, load) tool for spatial data. You can script and automate all kinds of geometry and data manipulation tasks. The basic edition is more affordable, but if you had limited funds the Blender GIS addon will get you some of the way.
I really love your work, it's the best balance between accurate GIS based mapping, and art. Really a great example of what modern cartography should be striving for.
I currently have access to a large set of Lidar data sets I'm using for similar work. I can easily produce a terrain model, but am having trouble automatically generating buildings from that classification layer. The buildings in your interactive example are so crisp and clean, did they require additional work, or were you able to use FME to create them as they are shown?
Many thanks for sharing your process and story.
I feel surprised when someone not in survey and mapping industry, could produced something great! But must be remember that all the data provided will be useful for somebody to create or build something important for living sustainability. I feel, the selective quality data should be used rather than just random selected and produced a great visualization.