Artem Nesin - Procedural Road Toolkit

The Procedural Road Toolkit Plugin is a powerful toolset for Unreal Engine designed to effortlessly construct, customize, and optimize complex road systems. It streamlines landscape environment workflows by automating everything from seamless intersection generation to dynamic terrain fitting and roadside equipment placement.

๐Ÿ“– Documentation & Guides:
๐Ÿ“‘Documentation
๐Ÿ“Œ Parameters Overview
๐Ÿ“Œ Final Road Overview
๐Ÿ“Œ Bake Geometry Overview
๐Ÿ“Œ Generated UV Overview

๐Ÿš€ Quick Start Tip: To preview a textured road immediately, assign the pre-prepared material instance from ProceduralRoadToolkit/Demo/Materials/MI_RomanStoneRoad to the "Road Network Material" property.

๐Ÿ“ฆ Ready-to-Use Sample Content: Includes demo scenes, sample meshes, and basic textures for an immediate out-of-the-box setup.

โš ๏ธ NOTE: All included 3D models and textures are sourced from free Fab/Epic Games assets and are intended strictly for quick testing and demonstration purposes.

โš ๏ธ NOTE: This plugin relies on the built-in Geometry Processing. Please make sure it is enabled in your Unreal Engine Editor under Edit > Plugins.

Features:

1. Procedural Road, Intersection & Terrain Generation

  • Spline-Based Road & Intersection Mesh: Generates continuous, clean road geometry and complex intersections directly along 3D spline paths.

  • Customizable Mesh Topology: Full control over grid density and tessellation via intuitive parameters, allowing you to fine-tune polygon count for performance or high-fidelity deformation.

  • Integrated Terrain Bridging: Seamlessly generates surrounding terrain geometry along road edges, smoothly conforming landscape topology to the road profile.

2. Multi-Channel UV Generation Pipeline

  • UV Channel 0 (Global Planar Tiling): Automatically generates planar-projected UVs across the geometry, perfectly suited for seamless, non-stretching base textures (asphalt, gravel, dirt).

  • UV Channel 1 (Longitudinal Road Markings): Generates continuous, linear UVs along the length of the road surface to cleanly align directional textures (centerlines, lane markings, wear tracks). Non-road side polygons maintain matching planar UV scales for visual consistency.

  • UV Channel 2 (Normalized [0, 1] Masking Space): Packs planar-projected UVs into a normalized [0, 1] square boundary per segment or intersection. Designed specifically for texture painting, puddle masks, custom dirt/damage decals, and advanced material layer blending.

3. Custom Vertex Color Assignment

  • Targeted Vertex Color Channels: Assigns distinct RGBA vertex color values independently to the road surface, intersections, and surrounding terrain geometry.

  • Shader Integration Ready: Drives complex material logic directly in the Material Editorโ€”such as procedural blend masks, edge wear, dirt accumulation, and wetness transitionsโ€”without requiring additional texture samples.

4. Versatile Collision Generation

  • Custom Physics Setup: Fully configurable collision options for generated roads, intersections, and terrain.

  • Complex-as-Simple & Trimesh Options: Supports exact triangle mesh collision for pixel-perfect physics interaction with vehicles and line traces, alongside custom collision profile presets and object channel filters.

5. Roadside Equipment & Infrastructure Placement

  • Static Mesh Instances (ISM): Spawns rigid roadside elements (light poles, traffic signs, delineator posts) using Instanced Static Mesh components for maximum rendering performance and zero draw-call overhead.

  • Deformable Spline Meshes: Continuously bends modular geometry (guardrails, parapets, noise barriers) along curved road trajectories with complete transform control.

  • Extruded Dynamic Profiles: Real-time 2D cross-section extrusion for procedural roadside infrastructure, such as custom kerbs, gutters, sidewalks, and road shoulders.

6. Procedural Geometry Baking

  • Static Mesh Baking: Easily bake generated road networks and spline meshes into permanent UStaticMesh assets. Once saved to the Content Browser, baked assets can be reused across different levels, edited in external 3D software, or used to eliminate dynamic component overhead in production builds.