Nodes
Every node type, by category. A scene is a tree of nodes; add one with Add Node (Ctrl+A) in the editor or Scene.create_node(type) from Lua.
Every node also has the common properties.
Core & 2D
Section titled “Core & 2D”| Node | |
|---|---|
Empty Node Node |
Basic 2D transform node with position, rotation, scale, and hierarchy grouping. |
Camera 2D CameraNode |
2D Camera viewport controller supporting target tracking, zoom levels, rotation, and screen offsets. |
Timer TimerNode |
Periodic and one-shot countdown timer node for delayed actions and recurring intervals. |
Lua Script Node ScriptNode |
Dedicated Lua scripted node that automatically executes lifecycle callbacks (ready, update, render). |
Advanced Camera AdvancedCameraNode |
A virtual camera (Phantom Camera style): follow modes (glued, damped with look-ahead, group with auto-zoom, path, dead zone), limits incl. the LDtk level the target is in, trauma shake. The highest priority one is shown; switching blends. |
Graphics & Rendering
Section titled “Graphics & Rendering”| Node | |
|---|---|
Texture Sprite TextureNode |
2D textured sprite quad with texture mapping, tinting, origin offsets, and flipping. |
LDtk Tilemap Level LdtkLevelNode |
Full LDtk level renderer for grid-based tile layers, auto-layering, and entity placement. |
Tile Map TileMapNode |
Grid of tiles from a tileset image, painted in the viewport; optional colliders. |
Light LightNode |
2D point or spot light with colour, energy, radius and falloff; casts shadows from physics shapes. Set the scene’s Ambient to darken unlit areas. |
Text TextNode |
Text in the world: any project font (or SDF for crisp scaling), wrapping, alignment, rich text ([color=..] [size=..] [wave] [shake]), localization keys and a typewriter reveal. |
Nine Slice Sprite NineSliceNode |
A texture stretched to any size while its borders keep their size (panels, buttons, frames). |
Parallax Background ParallaxNode |
A background that moves with the camera at a factor (0 = fixed, 1 = world), repeating and optionally drifting. |
Line LineNode |
A polyline through local points: width, colour, closed, rounded joints (lasers, ropes, outlines). |
Post Effect PostEffectNode |
Applies its Material shader to the whole screen: built-in vignette, CRT, pixelate, chromatic aberration, or your own. Several chain in order. |
Animation & Effects
Section titled “Animation & Effects”| Node | |
|---|---|
Frame Animator FrameAnimationNode |
Sprite sheet frame-by-frame animator with configurable frame durations, loops, and ping-pong modes. |
Animation Player AnimationPlayerNode |
Keyframe animation sequencer supporting property tracks, transitions, and timeline scrubbing. |
Aseprite Sprite AsepriteNode |
An Aseprite file (.aseprite / .ase) played as Aseprite does: tags, directions, repeats, frame durations; layers on / off, slices and user data for scripts. Saving in Aseprite updates it live. |
State Machine StateMachineNode |
States, transitions and conditions on parameters; each state can play an animation on an AnimationPlayer. Scripts get on_enter_ |
Particle Emitter ParticleEmitterNode |
2D particle burst and fountain generator with customizable speed, spread, lifetime, and colors. |
Skeleton SkeletonNode |
Skeletal (cutout) animation from Spine or DragonBones exports: bones, meshes, skins, IK, events; crossfades; scripts can turn bones. |
Bone Attachment BoneAttachmentNode |
Under a Skeleton: follows one of its bones - put a weapon, a light or particles under it. |
Path PathNode |
A curve through points with Bézier handles, edited in the viewport: routes, rails, moving platforms’ tracks, camera paths. Add a Path Follow under it. |
Path Follow PathFollowNode |
Travels along its parent Path: speed, loop / ping-pong / stop, faces the way it goes. Put a sprite, a platform or an enemy under it. |
Trail TrailNode |
A fading, tapering ribbon behind a moving node (place it as a child): lifetime, width, colours. |
Audio & Sound
Section titled “Audio & Sound”| Node | |
|---|---|
Sound Effect SoundNode |
Audio emitter for one-shot and recurring sound effects (.wav, .ogg) with volume and pitch control. |
Music Streamer MusicNode |
Background streaming music player with seamless looping, crossfading, and volume attenuation. |
Physics & Collision
Section titled “Physics & Collision”| Node | |
|---|---|
Static Platform StaticBodyNode |
Static immovable collision body that dynamic bodies collide with; perfect for ground, walls, and terrain. |
Dynamic Physics Box DynamicBodyNode |
Box2D dynamic rigid body affected by gravity, physical impulses, forces, friction, and bounce. |
Character Mover CharacterMoverNode |
Kinematic character controller with smooth velocity integration, slope climbing, and ground snapping. |
Trigger Area AreaNode |
Physics detection volume that triggers onEnter and onExit overlap events without rigid collisions. |
Raycast Sensor RaycastNode |
Directional line-of-sight raycaster detecting intersection points, surface normals, and hit fractions. |
Visibility Notifier VisibilityNotifierNode |
Knows when the camera sees a rectangle: screen_entered / screen_exited, and can pause, disable or remove its parent off screen (enemies wake up, bullets despawn). |
Navigation Region NavigationRegionNode |
An area agents find paths in: baked into a grid from static bodies, solid tile maps and LDtk Solid cells. Bake in the Inspector; scripts can block cells (doors). |
Navigation Agent NavigationAgentNode |
Put it under a character: give it a target and it walks there along a path, around walls and other agents (moves a CharacterMover, a DynamicBody or any node). |
Joint JointNode |
Connects two bodies: hinge (revolute), distance, slider (prismatic), weld, wheel or motor; motors, springs and limits. Pick Body A (default: parent) and Body B. |
UI & Interface
Section titled “UI & Interface”| Node | |
|---|---|
Dialogue Box DialogueNode |
A dialogue box: lines with a speaker type out and advance with the confirm action. Scripts: box:dialogue_show({…}); events line_shown / finished. |
UI Container UIContainerNode |
Flexbox-style responsive layout container with horizontal/vertical flow, padding, and alignment. |
UI Label UILabelNode |
Clean text renderer with font sizing, color styling, and multi-line wrapping. |
UI Button UIButtonNode |
Interactive clickable button with hovered, normal, and pressed visual feedback and event callbacks. |
UI Slider UISliderNode |
Draggable continuous value slider for settings, volume, and numeric input. |
UI Checkbox UICheckboxNode |
Toggle checkbox widget for boolean options and feature flags. |
UI Progress Bar UIProgressBarNode |
Horizontal progress percentage visualizer for health bars, loading indicators, and gauges. |
UI Text Input UITextInputNode |
Single-line text field with placeholder; raises submitted and value_changed. |
UI Dropdown UIDropdownNode |
Drop-down selector over a list of options. |
UI Radio Group UIRadioGroupNode |
Mutually exclusive options. |
UI Toggle Switch UIToggleSwitchNode |
On/off switch. |
UI Knob UIKnobNode |
Rotary value control. |
UI Notched Slider UINotchedSliderNode |
Slider that snaps to detents. |
UI Volume Fader UIVolumeFaderNode |
Audio fader in decibels. |
UI Volume Meter UIVolumeMeterNode |
Stereo level meter. |
UI Separator UISeparatorNode |
Horizontal divider with an optional label. |
UI XY Plot UIXYPlotNode |
Line plot of streaming values. |
UI List View UIListViewNode |
Scrollable selectable list; raises selected. |
UI Tree View UITreeViewNode |
Hierarchical expandable tree. |
UI Bullet List UIUnorderedListNode |
HTML-style unordered list. |
UI Numbered List UIOrderedListNode |
HTML-style ordered list. |
UI Table UITableNode |
Sortable data table; raises row_selected and sorted. |
UI Icon UIIconNode |
Vector icon. |
UI Toolbar UIToolbarNode |
Row of icon buttons; raises item_clicked. |
UI Tab Container UITabContainerNode |
Tabbed pages container. |
