voxolith
API reference@voxolith/gen-terrainInterfaces

FineTerrain

A terrain k times finer, from refineTerrain: the same queries as Terrain, in fine voxels, answered per brick from the coarse heightfield.

Defined in: fine.ts:47

Properties

PropertyModifierTypeDescriptionDefined in
coarsereadonlyTerrainThe terrain it refines; its heights stay the source of truth.fine.ts:49
depthreadonlynumberExtent in fine columns along z: the coarse extent times k.fine.ts:57
kreadonlynumberFine voxels per coarse voxel.fine.ts:51
optionsreadonlyFineTerrainOptionsThe options it was refined with, as given.fine.ts:53
waterTopreadonlynumberTop fine voxel of the water, when a column is flooded.fine.ts:59
widthreadonlynumberExtent in fine columns along x: the coarse extent times k.fine.ts:55

Methods

columnSpan()

columnSpan(ox: number, oz: number): [number, number];

Defined in: fine.ts:69

The same for one 8x8 brick column at (ox, oz). Edit a box per column for speed.

Parameters

ParameterType
oxnumber
oznumber

Returns

[number, number]


fillBrick()

fillBrick(
   cells: Uint8Array, 
   ox: number, 
   oy: number, 
   oz: number, 
   base: number, 
   top?: TopOverride
): boolean;

Defined in: fine.ts:75

Write one 8^3 brick, as Terrain.fillBrick. top is looked up on coarse columns (the settlement's paths and yards) and applies to the top two fine voxels, with no blades; without one, the options' top applies.

Parameters

ParameterType
cellsUint8Array
oxnumber
oynumber
oznumber
basenumber
top?TopOverride

Returns

boolean


heightAt()

heightAt(x: number, z: number): number;

Defined in: fine.ts:61

Ground height (top solid voxel) of a fine column, before blades.

Parameters

ParameterType
xnumber
znumber

Returns

number


maxY()

maxY(): number;

Defined in: fine.ts:65

Highest Y anything is written at, blades included.

Returns

number


pick()

pick(
   origin: Vec3, 
   dir: Vec3, 
   opts?: object
): Vec3 | null;

Defined in: fine.ts:77

First point where a ray meets the ground (or, with water, the water), as Terrain.pick.

Parameters

ParameterType
originVec3
dirVec3
opts?{ maxT?: number; water?: boolean; }
opts.maxT?number
opts.water?boolean

Returns

Vec3 | null


spanOf()

spanOf(
   x0: number, 
   z0: number, 
   x1: number, 
   z1: number
): [number, number];

Defined in: fine.ts:67

Lowest and highest Y written within a fine-voxel footprint, for sizing edits.

Parameters

ParameterType
x0number
z0number
x1number
z1number

Returns

[number, number]


waterAt()

waterAt(x: number, z: number): boolean;

Defined in: fine.ts:63

Is this fine column under water?

Parameters

ParameterType
xnumber
znumber

Returns

boolean

On this page