Website powered by

Improbable - Nanite smart material pipeline and assets

During our adoption of UE5 one of the areas I was most proud about was my push to use a new texturing and materials pipeline for Nanite enabled assets. This was referred to as 'Smart Material's' and are analogous to Substance Designer materials.
The primary motivator for all this work was development speed. We'd had so many issues with asset art being too expensive on prior projects and I saw a big opportunity to streamline this with more procedural techniques.
In this pipeline which I created assets no longer require UVs. They go straight from unUVd high poly geometry into engine with all material set up done there very rapidly. Vertex colours for curvature and AO are baked inside Unreal and procedural materials are applied there.
One of the benefits of this system as well as asset speed is that it's very maintainable and art directable, there are essentially no per asset textures or setup, any asset can take any material. The total material instance count doesn't need to be too high and they are all live tweakable without going back to source assets.
It should be noted that this pipeline was of particular use to Improbable as we weren't doing true AAA texturing fidelity. Procedural techniques give a really strong foundation but are hard to truly polish with love and a human eye. In these cases extensive decal usage is required or hero assets could go down a more traditional texturing pipeline.

The master material setup I built here was fairly powerful and had the following features:
Up to two layers definable, with weathering controls for removing the top layer and exposing the bottom
All textures either World Aligned projections or Local Aligned for things that needed directionality like wooden beams
Colour, normal and roughness adjust controls for cavities, flat areas and edges
Micro and Macro projected texture variations
Per instance colour tint and projection offset randomisation for adding variation with massively repeated assets.
Extensive emissive controls
Rudimentary opacity controls via dithered alpha for things like glass materials. These weren't perfect but it allowed our glass to still be Nanite enabled.