OSM Importer SOP

The OSM Importer lets you import data from the Open Street Map data. This is an open database of most of the planet. 

The idea is to use real data to generate representations of existing cities, or to use as a starting point for new cities. A few tools to aid building generation will follow, but the first step is to get the raw footprint shapes constructed or imported. 

You can download this tool from our Github Repository

Extruding Building Shapes from OSM Data

Likely the first thing you'll try to do is extrude the building shapes, but there is a small gotcha on the way the data is being generated. This video will help you sort through that and show you a trick with using the generated data as a random seed. 


  • Doudini 5 months, 3 weeks ago  | 

    This is some great stuff Luiz! We have been on the look for some good OSM importer for Houdini and ended up using blender to get the Data. This looks really good! Cant wait to test it.

    • lkruel 5 months, 3 weeks ago  | 

      Glad you like it! Please report back after you have tested. I would love some feedback

      • Doudini 5 months, 3 weeks ago  | 

        I tested it with some Data we had laying around from the last project and so far it just works great! I like how all attributes get imported which makes it very easy to separate all the geo. Also the import was very quick and fast for a 25mb data. I will throw some bigger files at it and see that we can use it in production soon. :) Great Work!

        • lkruel 5 months, 3 weeks ago  | 

          Awesome! Glad you noticed those 2 things in particular (speed and completeness of the data) that's something that was pretty deliberate.

          I've gotten up to just over a gig with my OSMs. It was a large map of Tokyo, I think it took maybe around 10 minutes to load and it was something like 20 million points. It's designed to stream in the XML data so it shouldn't blow out of memory. Let me know what is your rough use case size once you get to that point.


  • yiannisr 5 months, 3 weeks ago  | 

    In apprentice there is not osm

  • Andr1 5 months, 2 weeks ago  | 

    omg... thanks! Going to try it soon

  • Andr1 5 months, 2 weeks ago  | 

    Hello Luiz,
    have you ever played with the Umap implementation?
    It works like google mymap (but it's better) and allows you to create custom shapes, lines, and markers over the map.

    It would be super useful to be able to import them in Houdini as well!
    Please have a look here: https://umap.openstreetmap.fr/en/


  • Areito 5 months ago  | 

    Hi I cant seem to get this to work on Linux, the python node fails with:

    File"", line 203, in
    File"", line 129, in build
    AttributeError:'Geometry'object has no attribute 'createPoints'

    works fine on osx

    • Rates 5 months ago  | 

      got it working, it was the python api
      moving from h to 16.0.633 fixed it.

  • kevinthebright 4 months, 4 weeks ago  | 

    Might be missing it but it doesn't show up on GitHub now, under the linked page or sidefx main page. Something change?

  • JohnDraisey 3 months, 3 weeks ago  | 

    This is brilliant! I got it to work on a small city section, and it's giving me a good starting point for procedural generation of the buildings in that section.

  • JohnDraisey 3 months, 3 weeks ago  | 

    Quick question, how do you open a ".map" file? I took your advice and clicked on the "Overpass API" link for a large region of OpenStreetMap.

  • mapoga 2 months, 3 weeks ago  | 

    This is amazing! Great work. Its super fast just what i needed.

    After having played with it a little I was looking into the possibility to import and merge multiple maps from separate files. And found it difficult to do with how the node works right now.

    I fiddled around and played with the code a bit so that it wouldn't be re-centered but stayed at its Mercator projection position.
    That worked but i had a small offset for each map generated from the bounding box of the captured file having less precision than the nodes themselves.
    Removing the involvement of the bbox altogether fixed my issue.

    If this node ends up being part of the full version of Houdini I think it would be nice to have that option.

    Thank you Luiz!

    • lkruel 2 months, 3 weeks ago  | 

      Oh nice! Yeah I could see that being useful.

      Thanks for the tip


  • EmmaSchuepfer 2 months, 2 weeks ago  | 

    That plugin is pretty cool!
    In order to mold the streets I tried to join all the single Bezier Curves of one street into one NURBS curve, so I can arrange lines along it and use Sweep afterwards.
    But somehow it seems impossible to join the lines into a single NURBS curve. Any ideas how I could do it?

    Thanks you!

Please log in to leave a comment.