[PLUGIN] OpenStreetMap importer

Awesome! This is just what I was hoping to see next! Very good job Mike!

Very very impressed! Thank you.

Quick question: Do you know if there’s a way to place this osm on top of a landscape and have it adjust to landscape elevation?

This is being worked on. A pull-request is up that pulls heightmap data and generates a landscape. Adjusting the roads to this landscape is not in there yet, but from the roadmap of one of the forks this is in progress, too. Be patient!

Plug-in looks great! Can I use this somehow to show just map without buildings but with update/refresh during game? I would like to use somehow OSM API to download part of map and update it in-game (location based game). Some hints where to start with downloading something to engine as useful asset? Using API is not a problem :slight_smile:

How’s this going? Would be very useful for our very-not-flat city environments we are working on. Happy to help with testing.

source of this please ?

Generate Landscape Actor beneath the OSM data by Hemofektik · Pull Request #16 · ue4plugins/StreetMap · GitHub (closed PR) is the only code that is still publicly available at the moment. Some of the work has been removed by the author unfortunately. It will hopefully be up again, soon.

Generating landscape splines from OSM data is possible, I grabbed his fork while it was available. I have it working on my drive. It can be released soon hopefully. In its current state the editor performance is really really bad with so many landscape splines having the green helper mesh / gizmo (don’t know how to call it) rendered, which makes them unusable IMHO. If they are disabled its okay, but editing them is not nice this way. I’ll keep you posted, when its in a usable state.

Thanks for the info on this :slight_smile:

yep thanks for the info :stuck_out_tongue:

It is now available on this branch: - looking forward to any feedback and contributions! :slight_smile:

Does this plugin support UE V4.17.1?

I am new to UE and am having troubles with UE recognising the plugin…

Have use used a source build of the Engine? You need to add one line in the LandscapeSplineComponent.h file, whichs makes the source build necessary to get OSM data into the landscape spline tool. Read Hemofektik’s answers in this: StreetMap plugin is not compatible with the current engine version · Issue #22 · ue4plugins/StreetMap · GitHub

Is there any documentation or tutorial on replacing default meshes like roads, buildings etc?

It needs documentation, we are aware. Will work on that soon. But for now its a little tricky so most likely ready to use for early adopters. Please don’t hesitate to ask if you are stuck! We are happy people trying it out. The Readme of the repo is the only documentation available yet.

To answer your question (referring to Railsynth branch): Meshes can be selected in the blueprint actor details when clicking the StreetMapActor in the Level outline. Under the “Roads” section you can select one mesh to be generated with all railway (or road) landscape splines.

Buildings are just simple geometry, no selectable meshes! They are the lines defining the building ground plan in OSM data extruded to a default height or the OSM “height” tag and have no proper UV texture mapping yet. To be more efficient they are non-editable the way Mike implemented them. To be able to edit them you have to look into the code and trigger spawning a mesh / actor at the e.g. center of the polygon defining a building. ESRI CityEngine for example has procedural rules (CGA) of how buildings can be described. If anyone has knowledge or the will to implement those kind of features, it would be awesome and definately needed! Its not in focus yet for the ones currently working on this plugin.

Hey i am fairly new to unreal and i have a problem with the coloring of streets and buildings.
I tried Sams way and sadly it is still green / gray. fspar30s way doesnt work too.
Could you help me here? Apologies if the solution is really obvious.

this looks totally cool and super awesome… i’ma try to get this to work I always wanted to put my local train station into a map. truly outstanding work.

Does this work with 4.18?

Happy new year!

the plug in look interesting… cant wait to see it gain more popularity and features like having building spawned as separated actors…

Good for 4.18?

Yes it still works in 4.18.

EDIT: Okay I found the solution. It does not work in 4.18 unless you make two small changes to one file.

In StreetMapComponentDetails.cpp
Line 46: change “.GetSelectedObjects” to “->GetSelectedObjects”
Line 61: chagne “.GetSelectedActors” to “->GetSelectedActors”

Source: [Tutorial] For anyone tries to build on UE4.18 · Issue #37 · ue4plugins/StreetMap · GitHub

I cannot get it to work in 4.18. Even with a clean install. I always get this error when I try to rebuild C++ code:


1>D:\0000 VR\VR_555\Plugins\StreetMap\Source\StreetMapImporting\StreetMapComponentDetails.cpp(46): error C2228: left of '.GetSelectedObjects' must have class/struct/union
1>D:\0000 VR\VR_555\Plugins\StreetMap\Source\StreetMapImporting\StreetMapComponentDetails.cpp(46): note: type is 'const IDetailsView *'
1>D:\0000 VR\VR_555\Plugins\StreetMap\Source\StreetMapImporting\StreetMapComponentDetails.cpp(46): note: did you intend to use '->' instead?
1>D:\0000 VR\VR_555\Plugins\StreetMap\Source\StreetMapImporting\StreetMapComponentDetails.cpp(61): error C2228: left of '.GetSelectedActors' must have class/struct/union
1>D:\0000 VR\VR_555\Plugins\StreetMap\Source\StreetMapImporting\StreetMapComponentDetails.cpp(61): note: type is 'const IDetailsView *'
1>D:\0000 VR\VR_555\Plugins\StreetMap\Source\StreetMapImporting\StreetMapComponentDetails.cpp(61): note: did you intend to use '->' instead?
1>ERROR : UBT error : Failed to produce item: D:\0000 VR\VR_555\Plugins\StreetMap\Binaries\Win64\UE4Editor-StreetMapImporting.dll

Anybody knows what’s happening?