RLS Studios
ProjectsPatreonCommunityDocsAbout
Join Patreon
BeamNG Modding Docs

Guides

Reference

Server CommandsGE UtilitiesGame Engine MainNavigation GraphScreenshot CaptureServerServer ConnectionSpawnpoint ManagerSimulation TimeVehicle SpawningSuspension Frequency Tester
Editor AI TestsEditor AI VisualizationEditor – Assembly Spline ToolAsset BrowserAsset DeduplicatorAsset Management ToolSFX Previewer (Audio Events List)Audio Ribbon EditorAutoSaveBarriers EditorBiome ToolBuilding EditorBulk RenameCamera BookmarksCamera TransformCamera Path EditorCEF HelperCo-Simulation Signal EditorCrawl Data EditorCreate Object ToolDataBlock EditorDecal EditorDecal Spline EditorDocumentation HelperDrag Race EditorDrift Data EditorDrive Path EditorDynamic Decals Tool (Vehicle Livery Creator)Engine Audio DebugExtensions DebugExtensions EditorFFI Pointer Leak TestFile DialogFlowgraph EditorForest EditorForest ViewEditor Gizmo HelperEditor Ground Model Debug HelperEditor Headless Editor TestEditor Icon OverviewEditor ImGui C DemoEditor InspectorEditor Layout ManagerEditor Level SettingsEditor Level ValidatorEditor LoggerEditor Log HelperEditor MainEditor Main MenuEditor Main ToolbarEditor Main UpdateMap Sensor EditorMaster Spline EditorMaterial EditorMeasures Inspector HeaderMesh Editor (Base)Mesh Road EditorMesh Spline EditorMission EditorMission PlaybookMission Start Position EditorMulti Spawn Manager (Vehicle Groups)Navigation Mesh EditorEditor News MessageObject Tool (Object Select Edit Mode)Object To Spline EditorParticle EditorPerformance Profiler / Camera RecorderPhysics ReloaderPrefab Instance EditorEditor PreferencesRace / Path EditorRally EditorRaycast Test Editor ToolRenderer Components Editor ToolRender Test Editor ToolResource Checker Editor ToolRiver EditorRoad Architect EditorRoad DecorationsRoad Editor (Decal Road)Road Network ExporterRoad River Cache HandlerRoad River GUIRoad Spline EditorRoad Template EditorRoad UtilitiesScene TreeScene ViewScreenshot Creator BootstrapScript AI EditorScript AI ManagerSensor Configuration EditorSensor DebuggerShape EditorShortcut LegendSidewalk Spline EditorSites EditorSlot Traffic EditorSuspension Audio DebugTech Server ManagerTerraform ToolTerrain And Road ImporterTerrain EditorTerrain Materials EditorText EditorTool ManagerTool ShortcutsTraffic DebugTraffic ManagerTraffic Signals EditorUndo History ViewerVehicle Bridge TestVehicle Detail ViewerVehicle Editor MainEditor - VisualizationEditor Viz HelperEditor Water Object HelperEditor Windows Manager

UI

Resources

BeamNG Game Engine Lua Cheat SheetGE Developer RecipesMCP Server Setup

// RLS.STUDIOS=true

Premium Mods for BeamNG.drive. Career systems, custom vehicles, and immersive gameplay experiences.

Index

HomeProjectsPatreon

Socials

DiscordPatreon (RLS)Patreon (Vehicles)

© 2026 RLS Studios. All rights reserved.

Modding since 2024

API ReferenceGE Extensionseditor

Decal Spline Editor

Spline-based decal placement tool. Creates and manages decal splines that automatically populate decal instances along a path with configurable materials, spacing, jitter, rotation, and multi-componen

Spline-based decal placement tool. Creates and manages decal splines that automatically populate decal instances along a path with configurable materials, spacing, jitter, rotation, and multi-component distribution.


Public API

FunctionSignatureDescription
M.onSerialize()→ tableSerializes all decal splines for save
M.onDeserialized(data)Restores decal splines from saved data
M.setSelectedSplineIdx(idx)Set selected spline index (cross-tool)
M.setSelectedNodeIdx(idx)Set selected node index (cross-tool)
M.onEditorGui()Main per-frame UI and rendering callback
M.onEditorInitialized()Registers decalSplineEditMode edit mode and window
M.onClientEndMission()Removes all decal splines when leaving a map

UI Window: "Decal Spline"

Top Toolbar

ButtonDescription
Add NewCreates a new empty decal spline
Import From BitmapTraces paths from a PNG mask file
Remove AllRemoves all enabled/unlinked splines
Lock ShapeToggle rigid vs per-node movement
Export MaskExports session as PNG mask
Save StateSaves decal state to disk

Spline List

  • Editable name, enable/disable toggle, remove per-spline
  • Linked splines shown as read-only (from Master Spline Editor)

Spline Properties

  • Spacing: Longitudinal gap between decals (0–100m)
  • Jitter: Random Z-axis rotation amount (0–0.2)

Components (up to 4)

  • Each has: material selection, num rows/cols, frame, scale, pre-rotation (0°/90°/180°/270°)
  • Material preview thumbnails
  • Enable/disable per component

Distribution

  • Round Robin: Cycle through components evenly
  • Random: Weighted random with per-component probability sliders and seed

Per-Component Tabs

  • Rows, Columns, Frame, Scale, Pre-rotation controls
  • Reset-to-default buttons per slider

Toolbar Under List

ButtonDescription
Go ToMoves camera to selected spline
SplitSplits spline at selected node
Flip DirectionReverses spline direction
SimplifyRDP simplification (tolerance 9.0)
Save TemplateExport spline profile to JSON
Load TemplateApply profile from JSON file

Dependencies

ModulePurpose
decalSpline/splineMgrCore spline data management
decalSpline/populateDecal instance creation along spline
toolUtilities/splineInputShared spline input handling
toolUtilities/materialSelectionMgrMaterial browser integration
toolUtilities/skeletonPath tracing from bitmap masks
toolUtilities/rdpRamer-Douglas-Peucker simplification

Notes

  • Default spline width: 10m; default material: asphalt_patches
  • Elevation scale: 100.0 for blue→red color transitions
  • All edits support undo/redo via editor.history:commitAction
  • Splines can be linked to Master Spline Editor (read-only when linked)

See Also

  • Editor AI Tests - Related reference
  • Editor AI Visualization - Related reference
  • Editor – Assembly Spline Tool - Related reference
  • World Editor Guide - Guide

Decal Editor

Full-featured decal placement and editing tool. Manages DecalData templates and decal instances with multi-selection, gizmo manipulation (translate/rotate/scale), spatial grid acceleration, and debug

Documentation Helper

Minimal extension that provides `editor.openHelp()` and `editor.openCodingHelp()` to open BeamNG documentation pages in the system web browser.

On this page

Public APIUI Window: "Decal Spline"Top ToolbarSpline ListSpline PropertiesComponents (up to 4)DistributionPer-Component TabsToolbar Under ListDependenciesNotesSee Also