Discrete biome categories used by world generation.
Ambient weather/particle effect associated with a biome.
Identifier for every distinct block kind. NONE is air, MAX is a sentinel.
Side-table of per-block state keyed by world position.
Binary min-heap of scheduled block ticks, ordered by due time then insertion order (stable FIFO among same-tick entries). At most one pending tick per position — re-scheduling an already-pending block is a no-op, the way fluids and redstone want it.
Per-block atlas tile coordinates for each face group, plus an optional uniform sRGB tint multiplied into the sampled albedo at render time.
Material/physics flags for a block.
Point-light parameters emitted by a block.
A 16x16x16 cube of blocks with axis convention X = width, Y = height (vertical), Z = depth.
Streaming voxel world built from Chunks keyed by integer chunk coordinates.
Per-block state record. type is the owning block id; other fields are block-specific.
Vertex buffers and counts produced by Chunk.generateVertices.
Read-only world queries available to a structure's planner (deterministic, from noise).
Block writer scoped to the chunk being generated; out-of-chunk writes are dropped.
A world-space axis-aligned region plus a closure that builds it.
A planned structure: the set of pieces to build.
A registered structure type.
Inclusive world-space box of the chunk currently being generated.
Result of a successful voxel raycast.
Invoked for a block at world (x,y,z); blockId is the block that scheduled/owns the tick.
Invoked for the block at (x,y,z) when an adjacent block (at fx,fy,fz) changed. Used by blocks that depend on their surroundings — plants needing support, redstone, observers, fluids re-flowing into a new opening.
Reference horizontal resolution used for UI layout scaling.
Reference vertical resolution used for UI layout scaling.
Width in pixels of the block texture atlas. Sourced from blocks.json.
Height in pixels of the block texture atlas. Sourced from blocks.json.
Width and height in pixels of a single block texture tile in the atlas.
Number of tile columns in the atlas.
Number of tile rows in the atlas.
Number of distinct BlockType values, excluding the MAX sentinel.
Whether the block appears in the inventory block picker. Indexed by BlockType.
Returns the weather/particle effect that should play in the given biome.
Returns the vertical cloud layer bounds (in world units) for the biome.
Returns the cloud coverage density multiplier for the biome.
Registers the engine's default block tick behaviors (idempotent).
Registers a handler run when a scheduled tick for blockId comes due.
Registers a handler run when blockId is hit by a random tick.
Registers a handler run when a block adjacent to blockId changes.
True if any random-tick handler is registered (lets the world skip the random-tick sweep).
True if any neighbor handler is registered (lets the world skip neighbor notifications).
Clears all tick handlers (tests / re-init).
Returns true if the block is water.
Returns true if the block is fully opaque.
Returns true if the block is semi-transparent or a prop (rendered in the alpha pass).
Returns true if the block collides with entities.
Returns true if the block emits light.
Returns true if the block is a prop (billboard, non-collidable foliage, etc.).
Returns true if the block should appear in the inventory block picker.
Returns the display name for the block.
Writes the block's local-space AABB into dest[0] (min) and dest[1] (max).
Returns the light parameters for the block, or the first entry as a fallback.
Builds and uploads the per-block-type uniform buffer used by chunk shaders.
Registers water & lava flow on the block-ticking core (idempotent).
Places a fluid block and schedules it to start flowing — for buckets, fluid
sources, and tests. block is a source (WATER / LAVA_STILL) or flow id.
Stamps an ASCII template via a set callback (shared by the engine's chunk
builder and tools/samples so the two can't diverge). layers[dy][dz] is a row
of chars along +X; palette maps chars to blocks (unmapped/space = skip);
rot (0–3) rotates the footprint 90° clockwise about the origin.
Registers a structure type (idempotent by id).
Removes all registered structures (tests / re-init).
Number of registered structure types.
Builds every registered structure whose volume overlaps the given chunk into
builder. Sweeps the chunk's region cell plus its 8 neighbors, so structures
rooted in adjacent regions carry their overlapping pieces in.
The voxel world: block and chunk types, the meshing/atlas pipeline, biomes, and procedural world generation. The infinite chunked world the engine streams and renders.