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
Gen Decal EditorGen Experimental Frame EditorGen Mesh ExplorerGen Experimental SolidFlexGen Mesh ModuleGen Network ModuleGen Region ModuleGen Render ModuleGen Terrain ModuleEditor Gen TestEditor Gen Top (Roof Geometry)Editor Gen UI (Building Architect UI)Editor Gen UtilsEditor Gen World

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 Extensionseditorgen

Gen Terrain Module

Procedural terrain and road lattice generation module for the gen editor.

Procedural terrain and road lattice generation module for the gen editor.


Overview

The terrain module provides tools for procedural terrain analysis and road network generation. It reads terrain heightmap data, manages road decals, generates lattice-based road layouts within regions, and provides debug visualization with colored markers. Works with TerrainBlock for height queries and the decal road system for road placement.


Module Table: T

FieldTypeDescription
T.outtableOutput data
T.out.aregiontableGenerated regions
T.out.defaulttableDefault generation parameters

Default Parameters

ParameterDefaultDescription
M2S_MARG16Margin of lattice starts inside region
LAT_SPACE15Lattice road spacing
RAND_RATE0.2Grid randomization share
WMI_TOMERGE1.24Width ratio to extend slice to highway
SLICE_MIN20Minimum lattice slice length
END_MIN8Minimum hanging end length

Key Functions

FunctionDescription
T.inject(oD)Injects the decal module dependency
forZ(p)Returns terrain height at a 2D position via core_terrain.getTerrainHeight
toMark(list, cname, f, r, op, keepz)Converts a point list to colored debug markers
clear()Deletes all generated decals and clears state

Debug Marker Colors

Color NameRGBDescription
red(1,0,0)Error/boundary markers
green(0,1,0)Success/valid markers
mag(1,0,1)Intersection markers
cyan(0,1,1)Path markers
yel(1,1,0)Warning/highlight markers
white(1,1,1)Neutral markers
blue(0,0,1)Info markers

Terrain Access

-- The module reads terrain data on initialization:
local tb = extensions.editor_terrainEditor.getTerrainBlock()
local grid = tb:getSquareSize()           -- Grid resolution
local tersize = tb:getObjectBox():getExtents() / grid  -- Terrain size in grid units
local tfr = tb:getWorldBox().minExtents   -- World-space origin

-- Height query at any point:
local height = core_terrain.getTerrainHeight(point)

Dependencies

ModulePath
Utils/lua/ge/extensions/editor/gen/utils
Render/lua/ge/extensions/editor/gen/render
Decal (injected)/lua/ge/extensions/editor/gen/decal

Usage Example

local T = require('/lua/ge/extensions/editor/gen/terrain')

-- Inject the decal module dependency
T.inject(D)

-- Mark points on the terrain for debugging
toMark({vec3(100,100,0), vec3(200,200,0)}, 'red')

-- Clear all generated content
clear()

-- Access generation parameters
local spacing = T.out.default.LAT_SPACE  -- 15

Exported Functions

T.decalDel(ind)

Deletes a generated road decal by index.

  • ind (number) - Index into internal adec array

T.onUpdate()

Per-frame update callback. Renders debug markers and region overlays.

T.inject(oD)

Injects the decal module dependency.

  • oD (table) - Decal module reference

T.clear()

Deletes all generated decals, resets terrain materials, and clears state.

Note: onVal and test are internal (local) functions and are NOT exported on the module table.


See Also

  • Gen Decal - Road/decal generation
  • Gen Region - Urban region generation
  • Gen Network - Road network topology
  • Gen Render - Debug visualization

Gen Render Module

Debug rendering utilities for the gen editor framework - paths, points, labels, and circles.

Editor Gen Test

Internal test/debug module for the Building Architect Tool (BAT) procedural generation system. Contains test routines for mesh generation, DAE export, LOD creation, XML manipulation, and building geom

On this page

OverviewModule Table: TDefault ParametersKey FunctionsDebug Marker ColorsTerrain AccessDependenciesUsage ExampleExported FunctionsT.decalDel(ind)T.onUpdate()T.inject(oD)T.clear()See Also