Unreal Engine 4 has a very powerful built in material editor that lets you create all sorts of amazing shader based visual effects. But as great as these are, there are still some things they struggle to do well (or easily) without a little bit of extra help.
For example, I have a particular interest in procedurally generating random urban environments. While there are all sorts of ways you can make pretty good looking terrain stuff with shaders, when you start trying to add in non organic features like roads, things can start to get a bit trickier.
Anyways, because of all that, I started looking into how you might go about generating textures dynamically on the fly in UE4. After a bit of googling I found there were a handful of brave souls (I think they might be wizards) who had already ventured forth down this road. While the work they have done is great, it’s also very experimental, not overly well explained (mostly) and – to be honest – was quite difficult to get going in UE4.
So I decided to roll out my OCD, dig in for a month or two and figure it all out. Now that I’ve got it all to a point where I sort of feel like I have it under control, I thought it might be nice to do a post here to show everyone how I did it in case it’s something that you might find useful as well.
To follow this tute you’re going to need a basic working knowledge of how to use the UE4 editor and how to code in C++. If you don’t have that you’re welcome to try and follow along but I won’t be explaining as much as I would normally in a beginners tute (and getting the basics right is something you really should do properly before launching into stuff like this anyway).
Version wise, I’ll be using Unreal Engine 4.10 and Visual Studio 2015 (Community Edition).