Technical art
Road Shader
A full-fledged road shader that can be used in AAA and AA games within UE5
Description

Project: Personal
Instruments used: UE5, Blender, Megascans
Road Shader Functionality
The road shader I created consists of 3 main layers: asphalt, gravel, and ground with the option to switch to using RVTs. Additional features include a roughness mask, micro details, tire tracks, a rain function, and the ability to blend the road mesh with the landscape along the edges via RVT or PDO.
Mesh vertex painting:
  • Green (G) channel represents tire tracks.
  • Blue (B) channel corresponds to gravel.
In this context, I utilized customized Megascans textures, adjusting their channels to align with the required shader setup.
To minimize the number of texture samples, it’s always advisable to make efficient use of a single mask texture for various purposes, including layer blending, roughness masks, puddles, and more. I also made an option to disable specific ORM (Occlusion, Roughness, Metallic) textures and replace them with straightforward mathematical calculations.
The rain function was developed following Ben Cloward’s tutorials and encompasses internal functions like a wetness mask, puddles, raindrops, ripples, and rain drips (although the latter may not be relevant in this case).
Finally, I organized the weather parameters into a collection, providing global access to them. This setup allowed for enjoyable experimentation and adjustment through the Sequencer.
<
>
MMSHVYREV@GMAIL.COM
+381 62 9758559
Novi Sad, Serbia
© 2024 Maksim Shvyrev
CV
Made on
Tilda