The Plume3D API is exposed to game scripts via Wren. All classes and methods described here are available in your game’s Wren code.
Each reference page includes return types, parameter types, descriptions, and code examples where applicable. Documented types (e.g. Num, String, Bool, List, Map, or class names like Mesh, Source) indicate the expected or returned values.
| Module | Description |
|---|
| Engine | Engine identity, version, and screenshot |
| Logger | Logging (info, warn, error, dump) |
| Shader | Shader resource (name) |
| Mesh | Vertex buffers, draw modes, and rendering |
| Module | Description |
|---|
| Input | Mouse, keyboard, modifiers, gamepads |
| Window | Size, fullscreen, title, design size, scale mode |
| Module | Description |
|---|
| Graphics | Load shaders, create meshes, draw, view/projection matrices |
| Gui | Immediate-mode GUI (windows, layout, labels, buttons, edit) |
| Module | Description |
|---|
| Audio | Global audio state, volume, listener position/orientation |
| Source | Per-source playback, volume, pitch, 3D position, cone, attenuation |
| Module | Description |
|---|
| Scene | Scene graph root, add nodes/cameras/lights, draw |
| Node | Transform hierarchy, position/rotation/scale, children, tags |
| Camera | View/projection, FOV, planes, world/screen conversion |
| Light | Point, Sun, Spot, Hemi, Area; color, energy, spot/area params |
| Raycast | Raycasts from point, camera, or node direction; RaycastHit |
| Module | Description |
|---|
| Config | Load TOML from mounted paths |
| Resource | Cached loading (config, blend, sound) |
| BlendResult | Result of Resource.loadBlend; classes, configs, instantiate, node custom data |
| Module | Description |
|---|
| Math | Trig, rounding, sqrt, pow, min/max, constants (pi, e) |