Orrery Terrain · OrreryTerrainCore module · struct
Native::
FScatterAutoRule
ExperimentalOne auto rule of the layer set, as the material reads it (MF_TerrainLayers, AutoRule{i}_Slope, _Altitude, _Noise).
Declaration
struct FScatterAutoRule- Header
#include "Native/TerrainScatter.h"- Module
PublicDependencyModuleNames.Add("OrreryTerrainCore");in your module’s Build.cs.- Stability
- Experimental: supported, may change in a minor version, with a changelog line.
- Thread
- Tier 1: plain C++, no allocation, deterministic in canonical order (ascending candidate index), any thread. (the header’s rule)
Description
It claims a share of layer 0's weight (the unpainted "auto ground") for Layer inside a slope band and an altitude band, each with a smoothstep fade, jittered and patched by one of two value-noise fields.
Properties
| Name | Type | Default | Meaning |
|---|---|---|---|
Slope | float | 0.f | AutoRule{i}_Slope.x, degrees. |
Slope | float | 90.f | AutoRule{i}_Slope.y, degrees. |
Slope | float | 1.f | AutoRule{i}_Slope.z, degrees. |
Layer | int32_ | 0 | AutoRule{i}_Slope.w: the paint layer the rule shows. |
Alt | float | -1.0e4f | AutoRule{i}_Altitude.x, metres (world Z plus the altitude offset). |
Alt | float | 1.0e4f | AutoRule{i}_Altitude.y, metres. |
Alt | float | 1.f | AutoRule{i}_Altitude.z, metres. |
Coverage | float | 1.f | AutoRule{i}_Altitude.w, 0..1: 1 = everywhere in the bands. |
Jitter | float | 0.f | AutoRule{i}_Noise.x, degrees. |
Jitter | float | 0.f | AutoRule{i}_Noise.y, metres. |
Field | uint32_ | 0 | AutoRule{i}_Noise.z: noise field 0 or 1, +2 inverts it. |