Skip to main content

Entities

Entities are the building blocks of games. They are similar to Unity's GameObject or Godot's Node. They implement basic functionality, support nesting and hierarchy, and can be scripted using Behavior classes.

Entities can be spawned using the right-click menu in the Scene Graph: spawning entity menu

Entity Catalog

note

This list may not always be up-to-date. Refer to the Dreamlab Editor for a complete list of entities.

General

EntityUsage
AudioSourcePlay an audio clip. Optionally enable positional audio relative to the camera
CameraRefer to the dedicated Camera page of the engine manual
CharacterControllerCollider with dedicated character movement checks that prevent collision
ClickableEntity that emits a Signal when clicked on
ColliderSolid collision for character controllers and other physics bodies
ComplexColliderComplex collision shape. Attach three or more empties as children for this to work. Forms a polygon from the children in CCW order
EmptyDoes nothing. Useful for attaching manager behaviors or marking positions (eg: spawnpoints)
RichTextDraw Pixi.js Rich Text in the world
RigidbodyEntity that has simulated physics. Attach one or more colliders as children for this to work.

Sprites

EntityUsage
AnimatedSpriteDraws a JSON spritesheet as an animated image with configurable speed and frame range.
SpriteDraw an image in the world
TilingSpriteSame as Sprite but with tiling options

UI

info

Visit the User Interface page of the engine manual for more info on HTML UI.

EntityUsage
UILayerCreate an HTML DOM tree that covers the entire game screen. Useful for static UI elements (eg: HUD)
UIPanelCreate an HTML DOM tree that exists in the world. Useful for UI elements that are fixed relative to the world (eg: signs, player nameplates, etc)

Graphics

EntityUsage
RawPixiAdvanced: Draw using Pixi.js using their Graphics primitive
ColoredSquareRender a solid color rectangle in the world
ColoredPolygonRender a solid color regular polygon in the world