3d cityscapes

Ciao belli!

For ages we have been craving for *good 3d data of surrounding cities when being confronted with a task like a areal rendering.
Even if it would just be untextured blocks. There have been several workarounds, like extruding plans, building-by-eyeball, ordering 3d data, using very shady and virus-infected tools to extract open-gl data from the google earth app. which honestly never worked
(don’t try it, it’s not worth the effort).

And there has been Open Street Map (osm) for some time. The Data, of course, also provides at least footprints of buildings – sometimes even detailed models.
There also have been several workflows to import this kind of data into your DCC app, which could be a tedious process.

Since some months there is a nice add-on for blender (tadaaa) which is improved constantly and it now at a state where it works quite reliable and conventiently:
 
The blender-osm (tush)!
 
It is made by Vladimir Elistratov and you can get it here: https://gumroad.com/l/blender-osm
It is not free, but only $5.90 – which does not equal its value at all (in positive way)
If you like, also see the forum thread on it, interesting to read. The dev is also open for suggestions and answers questions promptly ;)

So: but what does this post now want to tell you?

Well, of course we tested this nice tool along in our internal “blender agenda” or how you may call it – our getting-warm-with blender.

Well, long story short: we test-imported a bunch of metropolitan areas and decided to share the results with you guys.
As a little trap: we will only post the blender files, to lure you into blender-land. You can get it here: blender.org
If you really want to use another 3d-app, you can export those geometries via fbx – or, as you have already opened the blender, use the opportunity and try to navigate a bit around and try to play with it.
The blender scenes already contain the camera, material and light-setups as you see in the pictures ;)
(don’t panic, at the bottom of this post you find all of the cities as well in easy-to-import fbx-format :D )
 
 
Here you find the metropolis:
(click picture or city name to download blender file)
 



Berlin

 
 


Chicago

 
 


Hamburg

 
 


London

 
 


New York

 
 


Paris

 
 


San Francisco

 
 


Venice

 
 

Little description of the workflow

 

Get the blender-osm, install it.
Once you did there is a new tab on the very left named “osm”

Here you can define coordinates and which part of the dataset you want to import. For the first try buildings might be sufficient.
Further below you can choose how “generic” building data – the ones without information about levels and height – should be interpreted.
For dense European metropolitan areas i suggested between 4-5 levels at around 4 meters height each.
Then click import: off you go.

 
 

 
 

So: how to get the coordinates? It is very convenient to open the open streetmap export website and pick the area you want to load into blender.
Copy those coordinates into the blender-osm coordinates and click “import”.
Be aware: it is possible that you chose an area too large or too dense to be handled by your machine. This can easily happen. In this case you have to find a size which works and work your way forward in “chunks”.
E.g. I needed to import the central Paris divided into 10 stripes, also London separated into several patches. This highly depends on the complexity of the dataset.
Also a very handy way (and intended) is to press the “select” button. Your browser will open the add-on’s website where you can choose the desired area. Just press “copy” and then “paste” in the blender-osm: the coordinates are copied accordingly.

Another way could be to choose the area you want to import in the openstreetmap and then export from there an *.osm file which you can then load directly into the blender-osm – honestly the most convenient workflow I used.
Download the stripes or patches i need – and the load one by one into the blender.

 
 

 
 

Best part: you can also import terrain (see San Francisco pictures). To project the buildings onto the landscape unfortunately I could not make the blender-osm to work, but there is another blenderesque way to do this:
You add a Lattice-Object, bind the Buildings to it and “shrink-wrap” it onto the terrain… sounds complicated, but here is a good tutorial how to use the lattice in blender
It is french, but the pictures tell it all and it is the best one around!
In the latest version (2.2.1) problems with aligning the Buildings with the landscape have been fixed: Just import a terrain and afterwards the city, the buildings are projected onto it automatically.
Very handy for lively elevating landscape such as San Fransisco :)
So: Have fun!

Important legal notice:
cartography data licensed under CC BY-SA
© OpenStreetMap contributors
read more here about this:
http://www.openstreetmap.org/copyright
3d interpretation of the data provided by openstreetmap is stylized and must not used as real-world reference

berlinFBX
chicagoFBX
hamburgFBX
londonFBX
nycFBX
parisFBX
sanfranciscoFBX
veniceFBX

Comments

Show comments
  • Caue
    Looks great Lasse!!
  • GAZEone
    "using very shady and virus-infected tools to extract open-gl data from the google earth app. which honestly never worked (don’t try it, it’s not worth the effort)." -Well it does work, i can assure you, but only with very specific Google Earth Versions. Those versions only feature the "old style" 3d Buildings, not the new scanned LIDAR Data. I agree, that in a lot of cases this data is next to useless, but in some areas (like parts of Berlin and most of Munich) the 3d data will be quite ok, and it comes in (kind of) Textured as well, so they are sufficient as 2nd-row background buildings (with a llittle DOF), or as modelling reference. And the software used to get hold of the 3d-data is not shady or virus infected at all, it is just not getting support anymore. And it can handle openGL AND DirektX ;) Greetz, GAZE
  • Saarnak
    Very interesting article! Downloading Blender is tempting:)
Submit Feedback/Comments

*