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
Medal / Auto Medal (Flowgraph Node)Clear Messages (Flowgraph Node)Context Translation (Flowgraph Node)ConvertUnit (Flowgraph Node)Set UI Timer / Corner Timer (Flowgraph Node)Custom Button TEST (Flowgraph Node)Custom UI Layout (Flowgraph Node)End Screen (Flowgraph Node)End Stats (Flowgraph Node)Fade From Black (Flowgraph Node)Fade Sequence (Flowgraph Node)Fade To Black (Flowgraph Node)Flash Message (Flowgraph Node)Generic Mission Text (Flowgraph Node)Get Gamestate (Flowgraph Node)Show Editor (Flowgraph Node)Hide Game UI (Flowgraph Node)Message (Flowgraph Node)Mission End Screen (Flowgraph Node)Popup (Flowgraph Node)Monologue (Flowgraph Node)Multi Description (Flowgraph Node)On Bigmap Poi (Flowgraph Node)On Bigmap State Change (Flowgraph Node)Set UI Race Checkpoints (Flowgraph Node)Set UI Race Laps (Flowgraph Node)Set UI Race Recovery (Flowgraph Node)RT Message (Flowgraph Node)Select Buttons (Flowgraph Node)Set UI Layout (Flowgraph Node)Show Apps (Flowgraph Node)Show Monitor (Flowgraph Node)Start Screen (Flowgraph Node)Clear Goals (Flowgraph Node)Tasklist Message (Flowgraph Node)Tasklist Task (Flowgraph Node)Three Element Select (Flowgraph Node)Vehicle Selector (Flowgraph Node)
ImGui DialogueImGui Simple Text BoxImGui Vehicle Selector
ImGui BeginImGui ButtonImGui CheckboxImGui ColorImGui EndImGui NumberImGui SeparatorImGui Text

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 Extensionsflowgraphnodesuiimguielemental

ImGui Begin

- **Node Name:** `im Begin`

Overview

  • Node Name: im Begin
  • Category: repeat_instant
  • File: extensions/flowgraph/nodes/ui/imgui/elemental/imBegin.lua

Opens an ImGui window. Must be paired with an im End node. Supports positioning via anchor points (TL, TR, BL, BR).

Pin Schema

Input Pins

PinTypeDefaultDescription
titlestring-Window title (nil = no title bar)
widthnumber200Window width (hidden, hardcoded)
heightnumber150Window height (hidden, hardcoded)
posXnumber100X position (hidden, hardcoded)
posYnumber100Y position (hidden, hardcoded)
anchorstring"TL"Anchor corner: TL, TR, BL, BR (hidden, hardcoded)

Output Pins

PinTypeDescription
wasClosedflow (impulse)Fires once when the user closes the window

Internals

Key Methods

MethodDescription
work()Sets window size/position on first call, then calls im.Begin() each frame
_executionStarted()Resets the done flag so position is set on next execution

Anchor System

Position is computed relative to one of four screen corners using Canvas:clientToScreen():

AnchorBehavior
TLposX/posY from top-left
TRposX from right edge, posY from top
BLposX from left, posY from bottom edge
BRposX from right, posY from bottom

Window ID

The window is identified by title .. '##' .. self.id to ensure uniqueness even with duplicate titles.

How It Works

  1. On first work() call, sets im.SetNextWindowSize and computes screen position from anchor.
  2. Every frame, calls im.Begin(title, boolPtr, flags).
  3. If title is nil, the NoTitleBar flag is used.
  4. If the user closes the window (clicks X), wasClosed impulse fires.
  5. All ImGui elements between this node and the matching im End node are drawn inside this window.

Usage Example

-- Flowgraph chain:
-- [im Begin (title="My Window", width=300, height=200)]
--   → [im Text (text="Hello!")]
--   → [im Button (text="Click Me")]
-- → [im End]

-- Under the hood:
im.SetNextWindowSize(im.ImVec2(300, 200))
im.Begin("My Window##42", boolPtr, nil)
-- ... child elements ...
im.End()

Key Dependencies

  • ui_imgui - ImGui bindings
  • scenetree.findObject("Canvas") - for anchor position calculation

See Also

  • im Button (Flowgraph Node) - Related reference
  • im Checkbox (Flowgraph Node) - Related reference
  • im Color (Flowgraph Node) - Related reference
  • FlowGraph Guide - Guide

ImGui Vehicle Selector

- **Node Name:** `im Vehicle Selector`

ImGui Button

- **Node Name:** `im Button`

On this page

OverviewPin SchemaInput PinsOutput PinsInternalsKey MethodsAnchor SystemWindow IDHow It WorksUsage ExampleKey DependenciesSee Also