Procedurally built materials, especially when built with Substance Designer, can be designed to be parametric for editing and re-use in production. One substance can mean creating hundreds of differential materials. Every characteristic feature in this material is editable, all while maintaining its identity and PBR accuracy.
One of my favorite things about creating procedural materials in substance is having effects depend on the physical features of the material.
In this animated image example, it can be seen that the appearance of Xanthoria on the material depends on two things; one, the parameter’s setting and two, the height map.
This means that if the ‘Top Surface Erosion’ setting is increased, then the yellow Xanthoria will have more areas to appear. The physical state of the material has a direct affect on the appearance of certain affects, like Xanthoria and the green moss.
In the past, production in games and film would create their materials to work for a specific project requirement. If it was decided to re-use the material in another project or just a different environment, then the material would often need re-work.
Since the advent of physically based rendering, you can build materials that work in any renderer and in any lighting, more or less as long as a compatible PBR shader is being used.
In photo-realistic 3D modeling, making models physically accurate is most important. A 3D modeler wouldn’t exaggerate extrusions or overdo bevel features. The same is true for making photo-realistic materials.
Authoring your material accurate to physical reference is important for its realism, but it’s also important for the material’s compatibility across renderers. If the height is not created accurately, then the ambient occlusion (essential for real-time renderers) will not render appropriately; if the normal map is over-blown then the object will appear harshly shaped.
AO textures in materials and models are created for real-time ‘rasterized’ renderers (e.g. Unity, Unreal) and not used in ray-traced renderers. It’s important because lighting in these renderers are not as accurate as ray-tracing renderers. Self-shadowing, indirect lighting, and proximity occlusion are pain-points for real-time, and an AO map can help replicate realistic shadowing for areas of the model that are not directly lit and where proximity would create light occlusion. For 3D models, it’s important to bake AO based on geometry, but also for materials it’s important to generate the AO based on the physical traits of the material. To keep the material appearance consistent in real-time and ray-traced renderers, the AO map is best authored by matching the look of the material in a ray-traced renderer.