RLS Studios
ProjectsPatreonCommunityDocsAbout
Join Patreon
BeamNG Modding Docs

Guides

Reference

Server CommandsGE UtilitiesGame Engine MainNavigation GraphScreenshot CaptureServerServer ConnectionSpawnpoint ManagerSimulation TimeVehicle SpawningSuspension Frequency Tester
Flowgraph Base ModuleFlowgraph Base NodeFlowgraph Base State NodeFlowgraph Node BuilderFlowgraph GraphFlowgraph Group HelperFlowgraph LinkFlowgraph ManagerNew Node TemplateFlowgraph PinFlowgraph States ManagerFlowgraph UtilsFlowgraph Variable Storage
Accumulator (Flowgraph Node)Ease (Flowgraph Node)Increaser (Flowgraph Node)Expression (Flowgraph Node)

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 Extensionsflowgraphnodesmath

Ease (Flowgraph Node)

- **Node Name:** `Ease`

Overview

  • Node Name: Ease
  • Category: simple
  • File: extensions/flowgraph/nodes/math/ease.lua

Applies a smoothing/easing function to a numeric input. Input is expected to be between 0 and 1 but doesn't have to be.

Pin Schema

Input Pins

PinTypeDescription
valuenumberNumber between 0 and 1 as input to the ease function

Output Pins

PinTypeDescription
valuenumberThe result of the easing (between 0 and 1)

Internals

FieldPurpose
self.easeFuncNameName of the currently selected easing function
self.easeFuncThe actual Lua function reference

Available Easing Functions

  • linear
  • inQuad, outQuad, inOutQuad
  • inCubic, outCubic, inOutCubic
  • inQuart, outQuart, inOutQuart
  • inQuint, outQuint, inOutQuint
  • inSin, outSin, inOutSin
  • inExp, outExp, inOutExp
  • inCirc, outCirc, inOutCirc

How It Works

  1. On init, the default function is linear.
  2. The user selects an easing function via a combo dropdown in the node editor.
  3. Each frame, if input value is provided, it is passed through the selected easing function and the result is output.
  4. The easing function name is serialized/deserialized so it persists across save/load.

Lua Example

-- Easing functions are pure math: t → eased t
-- inQuad:    t*t
-- outQuad:   t*(2-t)
-- inOutQuad: t < 0.5 ? 2*t*t : -1+(4-2*t)*t

-- In a flowgraph, connect a normalized timer (0→1) to the input
-- and use the eased output for camera interpolation, UI animations, etc.

Key Dependencies

  • ui_imgui - for the easing function selector dropdown in the editor
  • _flowgraph_createNode() - standard flowgraph node registration

Additional Methods

C:_onDeserialized(nodeData)

Called after the node is deserialized (loaded from file). Restores runtime state from saved data.

Parameters:

  • nodeData

C:_onSerialize(res)

Called when the node is serialized (saved to file). Returns data to persist.

Parameters:

  • res

C:drawCustomProperties()

Custom ImGui drawing for the node's properties panel in the editor.

C:drawMiddle(builder, style)

Custom ImGui drawing in the middle section of the node in the editor.

Parameters:

  • builder
  • style

C:work()

Main work function called each frame/tick when the node is active.


See Also

  • Accumulator (Flowgraph Node) - Related reference
  • Increaser (Flowgraph Node) - Related reference
  • Expression (Flowgraph Node) - Related reference
  • FlowGraph Guide - Guide

Accumulator (Flowgraph Node)

- **Node Name:** `Accumulator`

Increaser (Flowgraph Node)

- **Node Name:** `Increaser`

On this page

OverviewPin SchemaInput PinsOutput PinsInternalsAvailable Easing FunctionsHow It WorksLua ExampleKey DependenciesAdditional MethodsC:_onDeserialized(nodeData)C:_onSerialize(res)C:drawCustomProperties()C:drawMiddle(builder, style)C:work()See Also