Skip to LandSnap
Nightshift logo
Asset Surface00:00:00 CST
LandSnap 1.1.0 Unreal Engine 5.8

Nightshift editor tooling / available on Fab

LandSnap

Settle the scene. Keep building.

Snap actors, particle systems, splines, and spline meshes to Landscapes, UE 5.8 Mesh Terrain, or intentionally tagged surfaces in one predictable, undoable editor pass.

Editor-only no runtime component no packaged-build cost

CompatibilityUE 5.8 testedLandscape + Mesh Terrain
Runtime costEditor-onlyNo packaged-build component
Placement safetyUndoableScoped editor transactions
World scaleLarge-world readyWorld Partition + HLOD safe

New in version 1.1.0

A tighter placement workflow for UE 5.8

The core snap stays fast and predictable. Version 1.1.0 expands the terrain, content, and control surfaces around it.

01 / Terrain

Mesh Terrain recognition

Snap to Landscapes and UE 5.8's experimental Mesh Terrain path without forcing a hard Mesh Partition module dependency.

02 / Particles

Particle-safe snapping

Place Niagara and Cascade emitters from a stable pivot, preserve rotation by default, and skip mesh-only settling passes.

03 / Control

Dockable LandSnap Panel

Run actor or spline actions and tune the live searchable settings object from Window -> LandSnap Panel.

04 / Automation

Agent-ready command layer

Expose opt-in editor commands for deterministic search, dry runs, snapping, and single-line JSON receipts.

Core workflow

From selection to settled in three steps

Use the default contract for fast passes. Tune only when the scene asks for more control.

Step 01

Select

Choose actors, particle systems, spline components, or spline mesh components.

Step 02

Choose the target mode

Use Only Terrain Surfaces for Landscape and Mesh Terrain, or Only Tagged Surfaces for explicit designer-owned geometry.

Step 03

Snap and refine

Run the actor or spline action, then tune alignment, Z offset, trace distance, or size tiers only if needed.

Predictable by design: terrain and tagged-surface modes are mutually exclusive. Tagged placement is surface-based, not free-form stacking.

Core workflow demo

See LandSnap in the editor

The video covers the original actor-and-spline workflow. Version 1.1.0 adds Mesh Terrain, particles, the dockable panel, and agent commands described on this page.

LandSnap artwork showing actors snapping down onto an Unreal landscape
Original LandSnap placement artwork. The current 1.1.0 surface coverage is detailed below.

Placement coverage

One tool. Four placement paths.

LandSnap keeps each target contract explicit, so fast placement does not turn into surprising placement.

Stable

Landscape

Settle props and spline points against Unreal Landscape with pivot, bounds-bottom, and normal-aligned placement.

Experimental

UE 5.8 Mesh Terrain

Recognize reflected Mesh Partition actors and components without forcing a hard module dependency.

Explicit

Tagged surfaces

Allow or ignore actor and component tags for roads, meshes, layered placement, and other designer-owned targets.

Pivot-safe

Niagara + Cascade

Place emitters from stable pivots and preserve rotation unless particle normal alignment is intentionally enabled.

Agent workflow / explicit opt-in

Built for MCP-connected editor tools—not as an MCP server

LandSnap exposes five Unreal Editor console commands that external MCP-connected agents or automation tools can call. It does not bundle an MCP server, require an AI provider, or store provider keys.

Safety gate Automation starts disabled.

Set LANDSNAP_AGENT_ENABLED=1 in the operating-system environment before Unreal Editor launches to opt in.

  1. 01
    SearchDry-run a bounded filter before transforms change.
  2. 02
    ReviewInspect deterministic JSON matches in the Unreal log.
  3. 03
    Search and snapSelect the same matches and run the existing action.
  4. 04
    Undo if neededKeep the normal scoped transaction available.
Output Log / LandSnapAgentJSON receipts

> LandSnap.Agent.Status

> LandSnap.Agent.Search

> LandSnap.Agent.SnapSelected

> LandSnap.Agent.SnapSplines

> LandSnap.Agent.SearchAndSnap

> LandSnap.Agent.Search folder=Environment/Rocks max=100

[LandSnapAgent] {"ok":true,"command":"search","query":"","class":"","tags":"","folder":"Environment/Rocks","assetfolder":"","count":1,"matches":[{"score":100,"label":"Rock_01","path":"/Game/Maps/Test.Test:PersistentLevel.Rock_01","class":"StaticMeshActor","folder":"Environment/Rocks","asset_paths":"/Game/Environment/Rocks/SM_Rock_01"}]}

Documentation

Start in minutes. Tune only when needed.

The common path is short. Open a section when you need the deeper placement contract.

01Installation and activationPlugin setup
  1. Copy the LandSnap folder into your project's Plugins/ directory.
  2. Open the project and enable LandSnap in Edit -> Plugins if prompted.
  3. Restart Unreal Editor and allow the editor module to rebuild when required.
  4. Open Window -> LandSnap Panel to dock actions and live settings beside your normal editor tools.

Requirement: Unreal Engine 5.8 tested. LandSnap is editor-only and does not affect packaged builds.

02Toolbar, panel, and hotkeysDaily controls
LandSnap SelectedSnap the current actor or particle selection.Ctrl + Down
LandSnap SplinesSnap spline points and spline mesh endpoints.Shift + Down

The dockable panel edits the same settings object used by toolbar, hotkey, and agent commands, so changes apply immediately.

03Actors, particles, and splinesPlacement behavior

Actors

Choose pivot or bounds-bottom placement, optional normal alignment with preserve-yaw, normal push, max slope, Z offset, and configurable trace distances.

Particles

Niagara and Cascade actors use stable emitter-pivot placement by default. Rotation is preserved unless particle normal alignment is explicitly enabled.

Splines

Snap spline points and spline mesh endpoints individually, with optional surface-normal up-vector alignment and point-count limits for long splines.

04Terrain and tagged-surface modesSurface policy

Only Terrain Surfaces

Allows Landscape and reflected UE 5.8 Mesh Terrain actors and components as valid snap targets.

Only Tagged Surfaces

Requires matching actor or component tags. Add allow tags, ignore tags, and choose where tag checks are performed.

These modes are mutually exclusive. Tagged mode uses Visibility trace fallback; disabling that fallback also disables tagged-surface mode.

05Advanced settling and size tiersUneven terrain

Footprints

Use convex best-fit alignment or the experimental concave paths for irregular footprints and uneven contact.

Floater correction

The optional bounce pass uses down- and up-traces to close small residual gaps after placement.

Scale-aware tuning

Auto and manual size tiers tune trace lift, depth, convex thresholds, push, and bounce limits for different asset scales.

06Debugging and practical limitsDiagnostics

Diagnostics

Enable debug line draw, verbose LogLandSnap output, and auto-tier logging to inspect traces and classification decisions.

Expectations

Very thin meshes, extreme slopes, missing simple collision, or highly concave targets can still need manual tuning. LandSnap favors predictable placement over physical simulation.

Design intent

Fast and predictable—not simulated perfection

Terrain, collision, and asset bounds vary. LandSnap uses conservative, size-aware placement heuristics so the common case stays quick, undoable, and easy to reason about.

Available on Fab

Spend the pass on the level—not on transform cleanup.

LandSnap 1.1.0 targets Unreal Engine 5.8 and stays entirely inside the editor.