Skip to content

Splines Tab

The Splines tab (accessible via the road icon in the side toolbar) is used for designing and editing road networks, tram/rail tracks, sidewalks, bicycle paths, horizontal road markings, and guardrails.

The editor offers two distinct editing paradigms: geometric vertex manipulation (NODES) and direct whole-segment manipulation (FRAGMENTS), complemented by advanced auto-joining, vertical alignment, and geometry cloning tools.

Splines main panel


1. Toolbar and Global Parameters

The top toolbar provides profile library management and a global node display offset:

  • REBUILD LIBRARY – rescans simulator folders and updates the list of available .sli files.
  • OPEN IN EXPLORER – opens the folder containing the selected spline profile in Windows Explorer.
  • REFRESH THUMBNAIL – regenerates a preview thumbnail for the selected profile.
  • NODE HEIGHT OFFSET (with + / - buttons): Globally shifts the vertical rendering height of spherical manipulation handles (markers) relative to spline surfaces.
    • Allows lowering or raising node handles so they align flush with the road surface (e.g., adjusting from 0.000 to -0.090): Node before offset Node after negative offset

2. Library Browsing and Profile Selection

Spline profiles can be browsed in two modes:

Flat list of splines

Displays a list of profiles with cross-sectional texture previews, profile names, folders, and favorite stars.

Spline directory tree

Mirrors the physical folder hierarchy within the Splines directory on disk.

  • SEARCH SPLINE input: Filters the list by name or path.
  • Favorites Bar: Clicking the star pins the profile to the bottom quick access bar.

3. Selecting Edit Mode: NODES vs FRAGMENTS

A toggle switch in the panel determines the interaction workflow:

Nodes or Fragments toggle

Mode Scope
NODES Operates on vertices (geometric control endpoints). Used for routing road alignments, drawing curves, tuning curve radii, smoothing kinks, and adjusting vertex elevations.
FRAGMENTS Operates on entire spline segments as discrete objects. Used for moving, rotating, subdividing (Cut), mirroring (Mirror), and profile swapping (Replace).

4. Nodes Mode (NODES) – Creation and Modification

In NODES mode, spherical control points (nodes) are rendered at spline endpoints. The active/selected node highlights in red, while unselected nodes appear white.

A. Creating a New Spline from Scratch (Step by Step)

  1. Select a spline profile from the library (or bottom favorites bar).
  2. Ensure no node is selected (press Esc).
  3. Press the N key. The first point marker will attach to your mouse cursor.
  4. Click LMB on the ground to anchor the starting node.
  5. Move the cursor – the editor stretches a real-time spline preview.
  6. While dragging, press R to toggle between geometry modes:
    • STRAIGHT (linear segment): Creating straight segment
    • CURVE (arc with radius computed dynamically from cursor position): Creating curve
  7. Click LMB to anchor the end node.
  8. The editor automatically chains to extrude the next segment from the newly placed node. Press Esc to finish.

B. Extruding a Spline from an Existing Node

  1. Click LMB on an end node of an existing spline (highlights red).
  2. Press the N key.
  3. The editor immediately begins extending a new segment preserving geometric continuity and tangential heading: Extruding spline from existing node
  4. Position the endpoint and click LMB.

C. Snapping to Another Node (Ctrl Snapping)

While moving a node or extending a new segment:

  1. Hold the Ctrl key.
  2. Bring the cursor near any other node on the scene: Node snapping before merge
  3. The node will snap and merge permanently with the target node: Merged nodes

5. Spline Geometry Parameters (Property Inspector)

Selecting a node reveals the geometric properties of the active segment in the side panel:

Spline geometry properties

Field Unit Description
X / Y / Z m Coordinates of the start node in tile space.
ID CODE Unique internal numeric identifier in the OMSI map file.
INDEX Spline index on the tile.
LENGTH m Segment length (+ / - buttons adjust by step size).
ROT ° Initial heading angle around vertical axis. + / - buttons rotate the segment.
RAD m Horizontal curve radius. A value of 0 denotes a straight segment (STRAIGHT). Non-zero defines turning radius (CURVE).
GRAD % Longitudinal grade (gradient slope) at start and end. Lock icon couples equal values.
CANT m / ° Superelevation (cross slope banking) at start and end.
SKEW Skew angle across start and end profile joints.

6. Controlling Elevation and Node Snapping

A. Height Snapping Modes (HOLD NODE HEIGHT)

  • TO TERRAIN: The node continuously matches its Z height to the terrain surface beneath it: Node snapped to terrain
  • TO ANY MESH: The node catches the altitude of any 3D collision mesh under the cursor (enables laying splines directly over bridge decks, building roofs, or elevated ramps): Node snapped to building roof

B. Elevation Adjustments: GRADIENT vs DELTA HEIGHT

The lower panel hosts the DELTA HEIGHT toggle:

  • Standard / Linear (key Z): Maintains a linear slope. Sharp gradient kinks form at the node apex: Height change without Delta Height
  • S-curve (Dual Smooth) (key X): The endpoint altitude is defined by an elevation difference (Delta Height). The editor forms a smooth parabolic vertical curve with flat tangents at both ends (StartGrad = 0, EndGrad = 0), eliminating abrupt crests and sags: Height change with Delta Height
  • Sag Curve (Ease-in) (key C): Transition curve with horizontal tangent at the base / stationary node and steep tangent at the moving node: Height change with key C
  • Crest Curve (Ease-out) (key V): Transition curve with steep start at the base and horizontal tangent at the crest / moving node: Height change with key V

7. Advanced Node Editing Utilities

A. Splitting a Node (SPLIT NODE)

Separates a shared node connecting two or more splines into independent points:

  1. Select the shared node: Shared node before split
  2. Click SPLIT NODE.
  3. The shared joint splits into independent nodes for each spline, allowing them to be moved apart: Split independent nodes

B. Snapping to Scenery Objects (SNAP TO OBJECT)

Binds node coordinates to a 3D scenery object:

  1. Select the spline node: Node before snap to object
  2. Click SNAP TO OBJECT.
  3. Hover over the target scenery object (e.g., base of a signpost) and click LMB: Node snapped to signpost

C. Filleting and Smoothing Kinks (SMOOTH EDGE)

Inserts a transition fillet curve at a sharp angle between two splines:

  1. Select the corner vertex: Sharp corner before fillet
  2. Enter the fillet radius in meters in the adjacent field (e.g., 2 m).
  3. Click SMOOTH EDGE.
  4. The corner is replaced with a smooth tangent arc: Filleted corner

D. Automated Path Closing (COMPLETE TO)

Connects two separated nodes with a mathematically fitted tangent curve:

  1. Select the first node with LMB.
  2. Hold Shift and select the second node on another spline: Two selected nodes before join
  3. Click COMPLETE TO.
  4. The editor computes tangents and radius, inserting the connecting curve automatically: Generated connecting curve

Selection Order

nEditor connects the first selected node to the second node (opposite to the original OMSI editor).


E. Longitudinal Grade Smoothing (SMOOTH NODES CHAIN)

Smooths uneven grade steps across a series of nodes:

  1. Select a chain of nodes along an uneven slope: Node chain before vertical smoothing
  2. Click SMOOTH NODES CHAIN.
  3. Elevations across all intermediate vertices are recalculated along an idealized uniform grade: Node chain after vertical smoothing

F. Draping to Ground (FIT SPLINE TO TERRAIN)

Subdivides an extended spline into smaller segments conforming to terrain undulations:

  1. Select the endpoints of a spline crossing a hill: Spline before terrain fit
  2. Configure parameters:
    • PART LENGTH (e.g., 4 or 10 m): Maximum segment subdivision step.
    • Z OFFSET (e.g., 0 m): Vertical clearance above the ground.
  3. Click FIT SPLINE TO TERRAIN.
  4. The spline subdivides into a dense chain following the hill profile: Spline conforming to terrain

G. Duplicating Parallel to Reference (FIT SPLINE TO SPLINE BELOW)

Clones an existing alignment to generate perfectly parallel corridors (e.g., sidewalks, curbs, guardrails alongside roadways):

Example 1: Lateral Offset (X Offset = -4.0 m)

  1. Place a straight sidewalk segment and select its nodes over the roadway: Before fitting with X Offset -4
  2. Set X OFFSET to -4 m and Z OFFSET to 0 m.
  3. Click FIT SPLINE TO SPLINE BELOW.
  4. The sidewalk duplicates the entire roadway path and curve radius with an exact -4 m lateral offset: After fitting with X Offset -4

Example 2: Vertical Lift (Z Offset = 0.1 m, X Offset = 0)

  1. Place a spline overlapping the roadway: Before vertical lift
  2. Set X OFFSET to 0 m and Z OFFSET to 0.1 m (10 cm above asphalt).
  3. Click FIT SPLINE TO SPLINE BELOW.
  4. The spline clones along the entire length elevated by 10 cm: After vertical lift

8. Fragments Mode (FRAGMENTS)

In FRAGMENTS mode, spline segments are selected as single bodies by clicking on their surface (highlighted in red):

Fragments mode panel

A. Placing and Appending Fragments

  • Placing a New Fragment: Select a profile and press N. The fragment spawns under the cursor: Spawned new fragment
  • Extending a Fragment: Select a fragment and press N. An adjacent fragment appends directly to its end: Appended fragment

B. Subdividing Splines (CUT)

Splits the selected spline segment into multiple equal parts along its length:

  1. Select the fragment with LMB.
  2. In the NUMBER OF CUTS field, set the cut count (keys + / - step values live): Cut lines preview
  3. Click CUT.
  4. The spline divides into independent sub-segments: Subdivided spline

C. Additional Tools in Fragments Mode

  • CUT SKEW START / END: Adjusts skew joint angles interactively using the mouse.
  • REPLACE: Replaces the profile of the selected spline with the profile active in the library.
  • MIRROR: Inverts the cross-sectional profile (swaps left and right curb profiles).
  • KEEP CONNECTIONS: Preserves connectivity with neighboring segments during parameter edits.
  • HALF TRANSPARENT SPLINE (key: H): Toggles semi-transparency in the viewport.
  • TRANSPARENT ONLYEDITOR SPLINES: Forces transparency for editor-only guide splines.

9. Keyboard Shortcuts Summary

Nodes Mode (NODES)

Shortcut Function Description
N New Spline / Extrude Without selection: spawns new spline. With node selected: extrudes new spline from that node.
G Grab (Move) Translates selected node horizontally.
Z Height Z (Linear) Modifies node elevation maintaining a straight linear slope.
X S-curve Height Smooth dual-transition curve with flat tangents at both ends.
C Sag Curve (Ease-in) Vertical curve with flat base tangent and steep exit at moving node.
V Crest Curve (Ease-out) Vertical curve with steep start and flat crest tangent at moving node.
R Toggle Straight / Curve Toggles segment geometry live between straight and arc.
Alt Match Tangent Angle Re-aligns spline heading tangentially to the predecessor.
Ctrl (hold) Node Snapping Snaps moving node to nearby existing nodes.
H Semi-transparency Toggles semi-transparency for selected splines.
[ / ] Node Handle Scale Decreases or increases the visual diameter of node spheres in the scene.
Del Delete Deletes the selected node or spline segment.
Esc Cancel Aborts active action or deselects items.

Fragments Mode (FRAGMENTS)

Shortcut Function Description
N New Fragment Places a new segment or appends one to the selected fragment's end.
G Move Fragment Translates the entire selected fragment horizontally.
Z Fragment Height Shifts vertical elevation of the entire segment.
R Rotate Fragment Rotates the fragment around its vertical axis.
Ctrl + R Adjust Skew Adjusts Skew joint angle using vertical mouse dragging.
Ctrl + C Copy Copies selected fragments to the clipboard.
Ctrl + V Paste Pastes copied fragments under the mouse cursor.
+ / - Cut Count Increases or decreases cut subdivisions in the Cut tool.
Del Delete Fragment Deletes the selected spline fragment.