[TOOL] Procedural street and intersection building tool

—> Alpha released for testing or commercial applications by the UE4 community!

Hello to the community! We have been building a UE4 plugin (for some internal purposes) that can procedurally generate intersections and simplify street level design.

Some of the features are demonstrated in the videos bellow. If you show interest, we might be able to publish this plugin so that you can purchase it and use in your products.

Please let us know if you would be interested in using this kind of plugin and provide any feedback regarding the showcased functionalities. Pleas also state any suggestions for additional features and feel free to ask any questions.

https://i.imgur.com/dlQ4to1.gif

Detailed showcase videos:

Automatic intersection mesh building (fully procedural, responsive and editable)

Simplified street level design = road-following elements (also keep orientation towards the road)

Building a fully randomized and procedural street

Cinematic in-game demo of the procedural randomization

You may also visit the website of our self-driving company YDrive.

2 Likes

Looks really great and solves the struggles I experienced while working on the StreetMap plugin. So I am definately looking forward to your solution. :slight_smile:

I would be very interested in this plugin.

Does this support open street maps or similar for generating road splines and the like?

Thanks for the input folks, this is exactly what we hoped for - to hear about the desired features that we did not thought about so we could implement them. I see that Open Street maps are hot…

@MaSe87 could you point us to the plugin you are having struggles with and maybe describe the struggles a bit more? Hopefully we could include features that will help your work.

@HeadClot The support for the open street map is not implemented currently, but that would definitely be something we could do. What kind of workflow you would be most interested in. I am assuming that you want to load the road network splines from the OSM and than expect our plugin to automatically create nice intersections with editable curbstones and etc.?

1 Like

Another yes vote here. Nice work. That OSM idea is very nice one too!!

2 Likes

Hey stojke-y - Yep what you described would work perfectly for what I have in mind.

I would be interested in this as long as any road asset from the marketplace could be used?

Would be interested, what would be important here is having the markings be scaled properly and being able adjust how frequent the markings occur (for example they’re 30 cm wide & 100 cm long and they occur every 300cm). What’s also important is the distance of the markers from the side, and being able to adjust whether to have markers enabled to begin with(for both middle and sides). Would also be nice if the intersections would not require having to manually place the markers, being able to make presets for that would be good.

Hey guys, thanks for the input, glad that you are interested.

@jojo8026 We could implement the feature that you can use any road assets, but only for the road segments. The intersections are procedurally generated, so you can only apply materials to the generated mesh. Although we could enable deforming the provided intersection asset such that it fits the procedural geometry (in similar way as it is done for road segments), but I am no sure if that is going to provide acceptable results.

You may additional give some thought to the idea that, with this tool, you can procedurally create any desired road asset with the elements that you actually need (as you seen in the demo, you can easily place sidewalks, rails guards, curbstones, manholes, lane markings, buildings, road signs and etc.) and then just apply materials… That means instead of buying different assets you can automatically create a highly diverse road networks - as is if you have bought many different assets. On the other hand, I understand that you might want to just quickly import existing assets and start level designing - as I said, we can easily implement that for the road segments.

@Mootjuh I like that you are quite specific with the question. I think that we have already implemented everything that you have described. Pleas take a closer look at the second video LINK , there I place a sidewalk but the same can be done for any kind of road marking (lane, crosswalk, arrows…).

As you can see I can slide it along the road segment and also specify its longitudinal extent (and even just tick one box to make it extend the full road length). And yes, we can make them occur every 300cm or so, but that is demonstrated for the street lamps in the video (see the second half of it) - you can imagine that the same can be done for markings.

I will try to make additional demo video for the markings, later today or tomorrow…

: With the StreetMap plugin real world data can be used in UE4. The way its implemented, you’ll have the most basic geometry from road center line points. As I have no CG background, I didn’t even tackle generating properly UV-mapped geoemtry yet. Especially how a good strategy to have well aligned UVs on intersections and the border between intersection and straight sections for any type of intersection might look like… .and there are many variations.

More detailed formats than OSM exist for those cases, but OSM data is easily available. Take a look at the OpenDrive formaton how road networks in driving simulators are defined and also the “Fernbus simulator modding tools” for inspiration. I really like the flow they got into road modelling (still unreleased and limited to their game, but based on UE4).

@MaSe87 You have some very nice insights. The Fernbus tool is very interesting thanks for pointing me to that. We have the quit similar features in our tool, and we could make the same workflow as they - we will definitely think more about that. In contrast to Fernbus tool, we have procedural intersection generation which is much more flexible than just importing pre-made intersection patterns. Regarding the UV-mapping issues we have some ideas which for now function quite well, but on the other hand, most of the “texturing” is done by placing lane, crosswalk, manhole objects on the road, so the UVs are needed only for the the road surface texture. Later, after finishing the road network design, we could project the placed lanes and etc to a texture with a proper corresponding UV map to make stuff work faster in cases where the roads and intersections remain static during the application runtime.

Here is a demo of features available for procedural creation of **lanes and other road markings. **It is very flexible - everything can be scaled and offseated.

How much will this cost and will it work with World Composition?

The** beta version of the plugin is going to be free. **It will have all the features shown here, but it will be distributed only in binary (at least during the beta). And probably only for the win64 architecture for now.

The full release versions having more advanced features, such as OSM integration, will have a price tag, but the particular price is going to be decided when the features are implemented.

P.S. I have edited the previous post showcasing lanes and road markings to have the correct video link. Sorry for that and please take a look at the correct video.

We have released the alpha version of the StreetArch plugin for testing and evaluation by the community:

The underlying github repo of this release contains some usage instructions and the issue tracker (where we have listed some part of known bugs and issues - you may even post bugs or enchantments that you find yourself there).

Please tell us in this forum thread any feedback, suggestions or problems when you tryout the plugin.

Which version of Unreal engine do I need for StreetArch plugin?

Great work! any eta on marketplace ?

I tossed your GitHub repo link to my GitHub general/freely-usable UE4 repo: GitHub - trentpolack/joymachine-public: All sorts of random publicly-available information, assets (specifically: joymachine-public/README.md at main · trentpolack/joymachine-public · GitHub)

I’m looking forward to trying it here in a bit (EDIT: that’s a lie; are you planning on releasing source?)

Currently it is released and tested on UE 4.15. If you or anybody else would relay like to test it, but needs a different version pleas tell us, we should probably be able to provide. (Also we have not tested this binary with other versions, it might be compatible as is)

We are currently interested mostly in receiving feedback from you guys! Than will see what are the most wanted features/enhancements and try to plan our relese schedule based on that.
For now, we know that there is a great interest for the Open Street Map integration, and we will be working on it.

So, please test usability of the plugin and then toss some comment or suggestion. We will be polishing things out in the following months going towards beta and full release.

@Nocturness Maybe I misunderstood - I answered regarding the release of fully featured plugin. But are you interested in buying (or downloading alpha version for testing) of this plugin on the marketplace specifically? If so, why? And would you consider getting it from our website or other place.