PCG Geometry Decals Documentation

PCG Geometry Decals is a Blueprint-only system that combines Unreal Engine’s Procedural Content Generation Framework with Geometry Scripting to enable direct placement of high-resolution geometry onto landscape surfaces. Each decal conforms to the terrain below, displaces its shape using a height map, blends its edges naturally, and can be baked into a Nanite-enabled static mesh for efficient runtime use. The system operates entirely within the Editor and does not require any third-party tools or dependencies.
Installation
Before using the system, ensure the required built-in plugins are active. These are included with Unreal Engine and must be manually enabled.
- Open the Plugins panel via
Edit → Plugins
. - Enable the following plugins in the search bar:
- Geometry Scripting
- Procedural Content Generation (PCG)
- PCG Geometry Script Interop
- Modeling Tools Editor Mode
- Restart the Unreal Editor to apply plugin changes.
Basic Usage Instructions

To begin using the system:
- Drag a
BP_GeometryDecal_*
actor from/Game/PCGGeometryDecals/Demo/Examples/
into your level.
These examples are preconfigured with materials and height textures.
or
- Subclass
BP_GeometryDecal
and assign your own material and height texture.
Next, adjust parameters in the Details panel such as:
- Radius
- Height Magnitude
- Falloff (Mask Hardness)
- UV Tiling
- Displacement Resolution
When you're satisfied with the result:
- Select one or more decals.
- Right-click in the viewport.
- Navigate to Scripted Actor Actions → Bake to Static Meshes.
- In the popup dialog, enable Nanite if required.
This converts the editor-only decal into a runtime-ready Nanite static mesh.


Parameter Reference
Use these parameters to control decal shape, displacement, blending, and performance.
Property | Description |
---|---|
Material |
Mesh material, applied during generation and after bake. |
HeightTexture |
Heightmap texture for vertex displacement. |
Radius |
Footprint size in world units. |
HeightMagnitude |
Strength of vertical displacement. |
HeightCenter |
Vertical midpoint of displacement. |
HeightAdd |
Final Z-offset after displacement. |
MaskHardness |
Edge softness of the displacement mask. |
UVSize |
Auto-tiling size in cm (if auto UV is enabled). |
Tessellation |
Mesh subdivision level for detail. |
Resolution |
Internal bake texture resolution. |
HeightChannel |
Channel from texture to sample displacement (RGBA = 0–3). |
UVTiling |
Manual UV tiling (when auto-tiling is off). |
bCalculateUVTiling |
Toggles auto UV tiling via UVSize . |