Table of Contents

Struct ColumnContext

Namespace
WorldgenLib
Assembly
WorldgenLib.VintageStory.dll

Per-column context inside the Parallel.For loop. Mutable fields are applied by the host after each hook returns.

public ref struct ColumnContext
Inherited Members

Constructors

ColumnContext(int, int, int, int, Span<float>, Span<double>, Span<double>, BitArray, LandformsWorldProperty)

public ColumnContext(int worldX, int worldZ, int localX, int localZ, Span<float> landformWeights, Span<double> octaveAmplitudes, Span<double> octaveThresholds, BitArray columnBlockSolidities, LandformsWorldProperty landforms)

Parameters

worldX int
worldZ int
localX int
localZ int
landformWeights Span<float>
octaveAmplitudes Span<double>
octaveThresholds Span<double>
columnBlockSolidities BitArray
landforms LandformsWorldProperty

Properties

ColumnBlockSolidities

public readonly BitArray ColumnBlockSolidities { get; }

Property Value

BitArray

ColumnNoise

public readonly NewNormalizedSimplexFractalNoise.ColumnNoise ColumnNoise { get; }

Property Value

NewNormalizedSimplexFractalNoise.ColumnNoise

DistY

public float DistY { readonly get; set; }

Property Value

float

LandformWeights

Per-landform weights. The span is mutable by hooks.

public Span<float> LandformWeights { get; }

Property Value

Span<float>

LocalX

public readonly int LocalX { get; }

Property Value

int

LocalZ

public readonly int LocalZ { get; }

Property Value

int

NoiseBoundMax

public readonly double NoiseBoundMax { get; }

Property Value

double

NoiseBoundMin

public readonly double NoiseBoundMin { get; }

Property Value

double

Oceanicity

public readonly float Oceanicity { get; }

Property Value

float

OctaveAmplitudes

Interpolated octave amplitudes, mutable by step 2 hooks.

public Span<double> OctaveAmplitudes { get; }

Property Value

Span<double>

OctaveThresholds

Interpolated octave thresholds, mutable by step 2 hooks.

public Span<double> OctaveThresholds { get; }

Property Value

Span<double>

UpheavalStrength

public readonly float UpheavalStrength { get; }

Property Value

float

WaterBlockId

public int WaterBlockId { readonly get; set; }

Property Value

int

WorldX

public readonly int WorldX { get; }

Property Value

int

WorldZ

public readonly int WorldZ { get; }

Property Value

int

Methods

RecalculateOctaves()

Rebuild the octave arrays from the current landform weights. This is the safe way for a Step 2 hook to blend in a custom variant (for example a river landform) after changing LandformWeights.

public void RecalculateOctaves()