Orbdale Terrain · module
OrbdaleTerrain
A runtime module: in the editor and in packaged games. 29 public headers.
- Build.cs
PublicDependencyModuleNames.Add("OrbdaleTerrain");- Type
- Runtime
Net/OrbdaleTerrainEditPolicy.h
ExperimentalThe game's say over client edit requests.
#include "Net/OrbdaleTerrainEditPolicy.h"
- FOrbdaleTerrainFeatureEditContext struct
The feature a client's Replace or Remove request names, as the server knows it.
- FOrbdaleTerrainMaskUploadInfo struct
A brush mask a client offers to upload, as CanAddBrushMask sees it: the mask's size from the offer, and what this player has uploaded so far.
- UOrbdaleTerrainEditPolicy class
Decides whether a player may make an edit: the place for ownership, zoning and money (Tier 3).
Net/OrbdaleTerrainNetLink.h
ExperimentalThe per-connection actor that carries terrain replication.
#include "Net/OrbdaleTerrainNetLink.h"
- AOrbdaleTerrainNetLink class
One client's terrain link: its own actor channel, so terrain traffic never fills the PlayerController's reliable window.
Net/OrbdaleTerrainNetSubsystem.h
ExperimentalTerrain replication for the built-in UE networking.
#include "Net/OrbdaleTerrainNetSubsystem.h"
- FOnOrbdaleTerrainNetResult delegate
A request's outcome, as OnRequestResultBP gives it, for C++.
- UOrbdaleTerrainNetSubsystem class
Replicates one world's terrain edits: the server keeps one ordered log of authoritative records and serves a link per client; each client applies the records as a replica and sends its edits as requests.
Net/TerrainNetTransport.h
ExperimentalThe transport seam of terrain replication: what the net hub sends over one link, in each direction.
#include "Net/TerrainNetTransport.h"
- ITerrainNetToClient class
The server's side of one link: what it sends that client.
- ITerrainNetToServer class
A client's side of its link: what it sends the server.
- kTerrainNetMaxPartBytes constant
No RPC carries more than this, half of net.MaxConstructedPartialBunchSizeBytes.
Net/TerrainNetTypes.h
ExperimentalBlueprint-facing types of terrain multiplayer: the one ordered record stream, the handshake, request outcomes, the network settings and the net statistics.
#include "Net/TerrainNetTypes.h"
- EOrbdaleTerrainRecordKind enum
What a terrain record carries.
- FOrbdaleTerrainRecord struct
One record of the authority's ordered stream: what a game with its own transport relays from OnTerrainRecordBP on the authority to ApplyTerrainRecord on every replica, in Seq order.
- FOnOrbdaleTerrainRecordBP delegate
- EOrbdaleTerrainRecordApply enum
What ApplyTerrainRecord did with a record.
- EOrbdaleTerrainNetRefusal enum
Why the server refused a join or a request.
- EOrbdaleTerrainEditKind enum
What a request asks for, as the edit policy sees it.
- EOrbdaleTerrainNetRole enum
This side's role in terrain replication.
- EOrbdaleTerrainNetVerdict enum
How a client's last checkpoint compared, as its ack reports it.
- FOrbdaleTerrainNetHello struct
The client's first message (ServerHello): what both sides must share before anything else travels.
- FOrbdaleTerrainNetWelcome struct
The server's answer to an accepted Hello (ClientWelcome): the client's author id and its join.
- FOrbdaleTerrainNetAck struct
The client's acknowledgement (ServerAck, unreliable, 4 Hz): a lost one is replaced by the next.
- FOrbdaleTerrainNetResult struct
The outcome of one request, sent to its client only (ClientRequestResults).
- FOnOrbdaleTerrainNetResultBP delegate
- FOrbdaleTerrainNetSettings struct
The network settings (Project Settings, Orbdale Terrain, Network): built-in replication, request rules, pacing and checkpoints.
- FOrbdaleTerrainNetStats struct
What the net hub has done so far, for a debug overlay and for tests.
OrbdaleTerrainActor.h
Terrain actor holding the source asset, material and settings; creates and destroys the world terrain on play and in editor worlds.
#include "OrbdaleTerrainActor.h"
- AOrbdaleTerrainActor class
A terrain in a level: names its natural-ground source, its material and its runtime settings, and hosts the chunk components (Tier 3).
OrbdaleTerrainAsyncActions.h
Latent Blueprint nodes of the terrain: wait for ground to stream in, sample it exactly, sample a batch off the game thread, commit and undo constructions once their ground is resident.
#include "OrbdaleTerrainAsyncActions.h"
- FOrbdaleTerrainWaitDelegate delegate
The outputs of Wait For Terrain Ground and Wait For Terrain Editable: Reason is None on OnReady, why on OnFailed.
- FOrbdaleTerrainSampleDelegate delegate
The outputs of Sample Ground Exact (Async): the sample and None on OnCompleted; an empty sample and why on OnFailed.
- FOrbdaleTerrainSamplesDelegate delegate
The outputs of Sample Ground Batch (Async): the samples and None on OnCompleted; no samples and why on OnFailed.
- FOrbdaleTerrainCommitDelegate delegate
The outputs of the commit, rebuild and undo nodes: the committed result (bOk true) and None on OnCompleted; on OnFailed a refused result (bOk false, its Reason text when the terrain gave one) and why the node gave up.
- FOrbdaleTerrainSaveDelegate delegate
The outputs of Save Terrain To Slot (Async), the fields of
FOrbdaleTerrainSlotSaveResult: Ref is the save on OnCompleted (Result Ok); on OnFailed Ref is empty and Result, LostCodes and Message say why. - FOrbdaleTerrainLoadDelegate delegate
The outputs of Load Terrain From Slot (Async): Result is Ok on OnCompleted, why on OnFailed.
- FOrbdaleTerrainStampDelegate delegate
The outputs of Stamp Terrain (Async).
- UOrbdaleTerrainAsyncBase class
Common machinery of the latent terrain nodes: a game-thread ticker that polls once per frame, a timeout in real seconds, and a root reference that keeps the node alive until it finishes.
- UOrbdaleTerrainWaitForGround class
Wait until the full-resolution ground around some locations is resident and its collision is built.
- UOrbdaleTerrainWaitForEditable class
Wait until a brush over one circle would be applied: the answer to "can I edit here now?" after a load, a teleport or a spawn in a streamed or paged world, without polling.
- UOrbdaleTerrainSampleExactAsync class
Sample one position exactly, waiting for its ground to stream in first.
- UOrbdaleTerrainSampleBatchAsync class
Sample a large batch off the game thread: the snapshot is taken now, the work runs on the task system, and the samples arrive on the game thread.
- UOrbdaleTerrainCommitAsync class
Commit a plate or a corridor as soon as the ground under it is resident: streams the footprint plus 300 m around it (the terrain bakes in blocks wider than the footprint), tries every frame, and gives up at the timeout.
- UOrbdaleTerrainRebuildSplineFeatureAsync classExperimental
Rebuild a spline feature as soon as the ground under it is resident: the spline is sampled once, when the node starts; the node streams the footprint plus 300 m, tries every frame, and gives up at the timeout, as Commit Corridor (Async) does.
- UOrbdaleTerrainUndoAsync class
Undo or redo a construction.
- UOrbdaleTerrainSaveAsync class
Save the terrain beside a game's save slot (
UOrbdaleTerrainSubsystem::SaveTerrainAsync): fires OnCompleted with the reference to keep in the game's USaveGame, or OnFailed with the result, the lost-code count and a message. - UOrbdaleTerrainLoadAsync class
Load the terrain from a save a reference names (
UOrbdaleTerrainSubsystem::LoadTerrainAsync): fires OnCompleted, or OnFailed with why (NotFound for a missing file, Corrupt for a file that is not the recorded save). - UOrbdaleTerrainStampAsync class
Wait until the ground under one brush is editable, then apply it once as a one-dab stroke: a stamp.
OrbdaleTerrainAuthoringData.h
The terrain editor's authoring layer: the author's sculpt and features as one save payload beside the map.
#include "OrbdaleTerrainAuthoringData.h"
- UOrbdaleTerrainAuthoringData class
What the author made in the terrain editor, kept beside the map until a bake folds it into a tile store (Tier 3).
OrbdaleTerrainBrushAsset.h
Brush masks for the shell: the brush asset that holds a baked mask, the set that groups them, and the bake that turns a texture, raw pixels or a 16-bit TIFF into the mask's canonical bytes.
#include "OrbdaleTerrainBrushAsset.h"
- EOrbdaleTerrainBrushChannel enum
Which channel of a source texture becomes the mask.
- EOrbdaleTerrainBrushUsage enum
What a mask is for.
- EOrbdaleTerrainBrushDepth enum
The bit depth of a baked mask.
- EOrbdaleTerrainBrushBake enum
How a bake ended.
- kMaxSourceSide constant
Source image sizes above this many pixels a side are refused (BadSize).
- FBakeSpec struct
What the bake does to its pixels; the asset's bake settings.
- NearestSide function in OrbdaleTerrain::BrushBake
The nearest power of two to Side in 8 to 2048 (a tie goes up).
- ResolveSide function in OrbdaleTerrain::BrushBake
The side a spec bakes to: Side rounded by NearestSide, or 256 (Strength) or 1024 (Height) when Side is 0.
- ResolveBits function in OrbdaleTerrain::BrushBake
The bits a spec bakes to: 8 or 16.
- FromPlane function in OrbdaleTerrain::BrushBake
Bake one 16-bit plane: resample to the spec's side, invert, quantise to its depth and make the mask.
- FromPixels function in OrbdaleTerrain::BrushBake
Bake raw single-channel pixels from game code.
- FromTiff function in OrbdaleTerrain::BrushBake
Bake a 16-bit (or 8-bit or floating point) single-band TIFF.
- FromTexture function in OrbdaleTerrain::BrushBake
Bake a texture.
- kSplatChannels constant
Channels a splat image holds: red, green, blue, alpha, in that order.
- FromSplatRgba16 function in OrbdaleTerrain::BrushBake
Bake an RGBA image into up to four step masks, one per used channel (splat paint).
- FromSplatPixels function in OrbdaleTerrain::BrushBake
Bake raw 8-bit RGBA pixels from game code, as FromSplatRgba16 does.
- FromSplatTexture function in OrbdaleTerrain::BrushBake
Bake a texture's four channels, as FromSplatRgba16 does; the texture is read as FromTexture reads it (the editor's untouched source, else a CPU copy; never a GPU readback).
- UOrbdaleTerrainBrushAsset class
A brush mask as an asset: a baked, content-hashed grid that scales a brush per post or shapes a height Stamp.
- UOrbdaleTerrainBrushSet class
A group of brush assets: a palette a game or the editor lists, and registers in one call (
UOrbdaleTerrainSubsystem::RegisterBrushSet). - UOrbdaleTerrainSplatAsset class
A splat brush as an asset: one RGBA image that paints up to four terrain paint layers in one dab.
OrbdaleTerrainFeatures.h
Builders from Blueprint-unit plates and corridors to Tier 1 features (world cm in, millimetres from the terrain origin out), so C++ callers never convert by hand.
#include "OrbdaleTerrainFeatures.h"
- FOrbdaleTerrainFeatures struct
Turns Blueprint-unit descriptions into Tier 1 features through the terrain's contract frame.
OrbdaleTerrainFollowSettings.h
The project's settings for placed foliage and actors that follow the ground: whether foliage follows, and the per-foliage-type overrides.
#include "OrbdaleTerrainFollowSettings.h"
- EOrbdaleTerrainFollowMode enum
What a followed foliage type does when the ground under it changes.
- UOrbdaleTerrainFollowSettings class
Project settings for ground-following foliage (Project Settings, Plugins, Orbdale Terrain Follow).
OrbdaleTerrainFollowSubsystem.h
The world subsystem that keeps placed foliage and actors on the ground as it is edited.
#include "OrbdaleTerrainFollowSubsystem.h"
- FOnFollowInstanceReplaced delegate
An instance was hidden or restored and so changed id: NewId is INDEX_NONE while it is hidden; OldId is the id it had before it was hidden.
- FOrbdaleTerrainFollowStats struct
What the follow subsystem is tracking and has queued.
- UOrbdaleTerrainFollowSubsystem class
Keeps placed foliage and actors on the ground.
OrbdaleTerrainGroundFollowComponent.h
The actor component that makes a placed actor follow the terrain.
#include "OrbdaleTerrainGroundFollowComponent.h"
- EOrbdaleGroundFollowMode enum
What an actor does when the ground under it changes.
- FOnOrbdaleGroundMoved delegate
The ground under an actor moved or cleared it: OldZ and NewZ are the actor's world heights (cm) before and after, bCleared is whether the ground no longer admits it.
- UOrbdaleTerrainGroundFollowComponent class
Keeps the owning actor on the ground it was placed on.
OrbdaleTerrainLayerSet.h
The terrain's paint layer table: names and material slices for up to 256 paint layers.
#include "OrbdaleTerrainLayerSet.h"
- FOrbdaleTerrainLayerGrass struct
One grass entry of a paint layer: which ULandscapeGrassType grows where.
- FOrbdaleTerrainLayerEntry struct
One paint layer: what the player calls it and which slice of the material's layer textures it draws.
- UOrbdaleTerrainLayerSet class
The paint layer table of a terrain (Tier 3 data asset): entry N is paint layer N, up to 256.
OrbdaleTerrainLibrary.h
The Blueprint function library of OrbdaleTerrain: sampling, construction and ownership in Unreal units.
#include "OrbdaleTerrainLibrary.h"
- UOrbdaleTerrainLibrary class
Static Blueprint API over the world terrain: read the ground, preview and commit earthworks, undo them.
OrbdaleTerrainLibraryTypes.h
The value types of UOrbdaleTerrainLibrary and the async nodes: sample requests and answers, corridor parameters, earthworks, commit results and the undo token.
#include "OrbdaleTerrainLibraryTypes.h"
- EOrbdaleTerrainAccuracy enum
How exact a ground read must be.
- EOrbdaleTerrainSampleFields enum
Which columns a ground sample fills besides the height, which is always computed.
- FOrbdaleTerrainLayerWeight struct
One paint layer at a point and its weight: an entry of
FOrbdaleTerrainGroundSample::Paint. - FOrbdaleTerrainGroundSample struct
One ground answer in Unreal units.
- FOrbdaleTerrainKeepOutBP struct
Where along a corridor a keep-out run lies, and whether its ends get a tunnel opening.
- EOrbdaleTerrainFormationSource enum
Where a corridor's formation height comes from.
- FOrbdaleTerrainCorridorBP struct
A linear earthwork (road, rail, canal bank) as Blueprint states it, in cm.
- FOrbdaleTerrainEarthworks struct
What an earthwork does to the ground, in Unreal units: the preview and the committed numbers.
- FOrbdaleTerrainUndoToken struct
The inverse of one committed construction, to give back to UndoConstruction.
- FOrbdaleTerrainCommitResult struct
The answer to a construction call.
- EOrbdaleTerrainFeatureKind enum
What a feature is.
- FOrbdaleTerrainFeatureInfo struct
What the stack knows about one feature.
- EOrbdaleTerrainAsyncFailure enum
Why an async node gave up; None on the node's success outputs, which share the failure output's pins.
OrbdaleTerrainQuality.h
The terrain quality profiles, one per engine scalability level (Low, Medium, High, Epic, Cinematic), the console variable r.OrbdaleTerrain.Quality, and how the profile follows sg.LandscapeQuality.
#include "OrbdaleTerrainQuality.h"
- EOrbdaleTerrainQuality enum
A terrain quality profile, one per engine scalability level: the value is the sg.LandscapeQuality level it follows and r.OrbdaleTerrain.Quality's value for it.
- EOrbdaleTerrainQualityMode enum
Where the project's terrain quality profile comes from (Project Settings, Plugins, Orbdale Terrain, Quality Profile).
- FOrbdaleTerrainQualityRow struct
One console variable the profiles write, with its value under each profile.
- FromScalability function in OrbdaleTerrainQuality
The profile for an engine scalability level (sg.LandscapeQuality): 0 Low, 1 Medium, 2 High, 3 Epic, 4 Cinematic; below 0 Low, above 4 Cinematic.
- FarDetailOf function in OrbdaleTerrainQuality
The far ring preset a profile brings: Balanced from Low to Epic, High at Cinematic.
- FarNormalsOf function in OrbdaleTerrainQuality
The normal-only far level a profile brings: none at Low (the preset's own), level 2 to 4 km at Medium, level 2 to 8 km at High and Epic, level 1 to 8 km at Cinematic.
- ModeFromLegacy function in OrbdaleTerrainQuality
The profile source a project stored by earlier versions, under the key QualityProfile, read in the five-level scheme: Scalability, Low and Manual keep their meaning, Balanced becomes High and High becomes Cinematic, so a project keeps the far ring, sub-post detail and grass it had (
UOrbdaleTerrainSettingsreads the old key when the new one is absent). - GetRows function in OrbdaleTerrainQuality
The rows every profile writes, in a fixed order.
- GetActive function in OrbdaleTerrainQuality
The profile in force.
- Set function in OrbdaleTerrainQuality
Sets r.OrbdaleTerrain.Quality to Profile and applies it at once.
- Clear function in OrbdaleTerrainQuality
Sets r.OrbdaleTerrain.Quality to -1, so the project's Quality Profile is in force again.
- Apply function in OrbdaleTerrainQuality
Writes Profile's rows at SetBy, skipping each row whose variable was set at a stronger priority or does not exist (its module is not loaded).
- Matches function in OrbdaleTerrainQuality
Whether Profile is in force and every row that exists holds its value.
- ResolveFarDetail function in OrbdaleTerrainQuality
The far detail a terrain with these render settings draws: its own FarDetail when bOverrideFarDetail is on or when no profile is in force, else the profile's.
- ResolveFarNormals function in OrbdaleTerrainQuality
The normal-only far level in force: the profile's (FarNormalsOf), or the preset's own (Level -1) when no profile is in force.
- Refresh function in OrbdaleTerrainQuality
Re-reads the profile's sources and writes its rows when the profile or its priority changed, or always with bForce.
- Startup function in OrbdaleTerrainQuality
Hooks the console variables and engine init; the OrbdaleTerrain module calls it at startup.
- Shutdown function in OrbdaleTerrainQuality
Unhooks what Startup hooked; the module calls it at shutdown.
OrbdaleTerrainSculptComponent.h
Player sculpt input component that resolves the cursor and applies brush steps at a fixed step rate.
#include "OrbdaleTerrainSculptComponent.h"
- EOrbdaleTerrainStepMode enum
How a dragged brush times its steps.
- EOrbdaleTerrainMaskRotation enum
How a dab turns its mask (
FOrbdaleTerrainBrushBP::MaskAngleis the base angle in every mode). - UOrbdaleTerrainSculptComponent class
Turns a player's pointer into sculpt strokes: the sample input component for player sculpting, shaped like rail's URailConstructionInputComponent.
OrbdaleTerrainSculptTypes.h
Sculpt cursor-source and sculpt-result enums, and the sculpt tool state, volume and limit structs.
#include "OrbdaleTerrainSculptTypes.h"
- EOrbdaleTerrainCursorSource enum
Where the sculpt cursor comes from (Tier 3).
- EOrbdaleTerrainBakeWait enum
Why ground near a plate or corridor is not baked yet.
- EOrbdaleTerrainSculptResult enum
What applying one sculpt record did.
- FOrbdaleTerrainSculptState struct
The sculpt tool's state, for a HUD and for tests (Tier 3 value, no object references).
- FOrbdaleTerrainSculptVolumes struct
What one finished stroke moved, in cubic metres, for a costed game (a sculpt beneath a feature is a sculpt cost, never re-charged to construction).
- FOrbdaleTerrainSculptLimits struct
The authority's sculpt rules, edited with the terrain's runtime settings (Tier 3 config).
- FOnOrbdaleTerrainSculptRecordBP delegate
A sculpt record the authority applied, as bytes for the game's replication (a command or an undo/redo patch).
- FOnOrbdaleTerrainStrokeEndedBP delegate
A stroke ended with these volumes.
- FOnTerrainSculptStroke delegate
A stroke opened (bActive) or closed, with the world bounds (cm) it has touched so far.
OrbdaleTerrainSettings.h
Project-wide terrain defaults (Project Settings, Plugins, Orbdale Terrain).
#include "OrbdaleTerrainSettings.h"
- UOrbdaleTerrainSettings class
The project's defaults for every terrain: the material, the quality profile, the residency radius, the sculpt undo depth and whether to register the ground provider (Tier 3 configuration).
OrbdaleTerrainSourceAsset.h
Data assets describing the natural ground (grid origin, base cell size, subdivision), baked into a Tier 1 tile source when a terrain is created.
#include "OrbdaleTerrainSourceAsset.h"
- FOnOrbdaleTerrainSourceEdited delegate
Broadcast when a source asset's own properties were edited; the argument is the edited asset.
- UOrbdaleTerrainSourceAsset class
Where a terrain's natural ground comes from, as an asset (Tier 3).
- UOrbdaleTerrainFlatSourceAsset class
Natural ground flat at one height: the simplest source, for tests and empty maps.
- UOrbdaleTerrainProceduralSourceAsset class
Deterministic procedural hills (integer value noise, no transcendental functions), so every machine, test and scenario sees the same ground.
- UOrbdaleTerrainHeightmapSourceAsset class
Natural ground from a 16-bit heightmap stored inside the asset: one sample per base post.
OrbdaleTerrainSplineFeatureComponent.h
ExperimentalLive spline features: a component on a spline's actor owns one terrain feature, a corridor along an open spline or a plate inside a closed one, and replaces it in place when asked to rebuild.
#include "OrbdaleTerrainSplineFeatureComponent.h"
- EOrbdaleTerrainSplineFeatureKind enum
What a spline feature builds.
- EOrbdaleTerrainSplineFeatureState enum
Where a spline feature stands against the terrain.
- UOrbdaleTerrainSplineFeatureComponent class
A terrain feature that follows a spline: a corridor along an open spline or a plate inside a closed one, owned by this component and replaced in place (same id, same stack position) by each Rebuild.
OrbdaleTerrainSubsystem.h
Per-world terrain owner with streaming statistics, streaming invokers, sampling, editing and ground-changed delegates.
#include "OrbdaleTerrainSubsystem.h"
- FOnOrbdaleTerrainGroundChangedBP delegate
The ground changed (a struct, so it can grow without breaking a binding).
- FOnTerrainGroundChanged delegate
The ground changed.
- FOnTerrainLifecycle delegate
A terrain was created in, or is being removed from, this world.
- FOnOrbdaleTerrainLifecycleBP delegate
Blueprint form of FOnTerrainLifecycle: the host actor of the terrain.
- FOnTerrainSaved delegate
A save to a slot ended, on the game thread, exactly once (
UOrbdaleTerrainSubsystem::SaveTerrainAsync). - FOnTerrainLoaded delegate
A load from a slot ended, on the game thread, exactly once (
UOrbdaleTerrainSubsystem::LoadTerrainAsync). - FOnTerrainRecord delegate
The native form of OnTerrainRecordBP: each record the authority applied, as a view valid during the call only.
- FOrbdaleTerrainStreamingStats struct
The streamer's counters and queue depths at one moment; see
UOrbdaleTerrainSubsystem::GetStreamingStats. - FOrbdaleTerrainFileSave struct
What a file save did: the game's own save keeps Path, Bytes, FileHash, StateHash and NaturalHash beside each other, so a mismatched pair is refused at load (
FOrbdaleTerrainSaveRefwraps them). - FOnTerrainFileSaved delegate
A file save landed, on the game thread (
UOrbdaleTerrainSubsystem::SaveTerrainToFile). - FOrbdaleTerrainPagingStats struct
The pager's view of paging: the world's counters and the session page file's.
- FTerrainInvoker struct
A place, other than a streaming source, that needs full-resolution ground around it (Voxel Plugin's term).
- FOrbdaleTerrainRvtStatus struct
What the terrain's colour runtime virtual texture is doing (
UOrbdaleTerrainSubsystem::GetRvtStatus). - UOrbdaleTerrainSubsystem class
The terrain of one world: owns its FTerrainWorld and everything that keeps the engine in step with it (Tier 2.5 owner + Tier 3 shell).
OrbdaleTerrainTileStoreAsset.h
ExperimentalThe tile store asset: a source's baked tiles as one packed payload, and its index.
#include "OrbdaleTerrainTileStoreAsset.h"
- FOrbdaleTerrainTileStoreIndex class
The packed index of a tile store: where each stored tile's bytes sit in the payload.
- EOrbdaleTerrainStoreInput enum
What kind of input a tile store was imported from, for the importers' staleness checks.
- FOrbdaleTerrainGeoOrigin struct
Where a tile store's ground sits on the earth: metadata only, never read by the terrain.
- FOrbdaleTerrainStoreProvenance struct
What a tile store was built from, so an importer can tell whether the host changed since (see IsImportCurrent).
- UOrbdaleTerrainTileStoreAsset class
The cooked tile store: natural ground for large worlds, streamed per tile.
TerrainBlueprintTypes.h
Blueprint-facing value types of the terrain subsystem: surfaces, precision, change causes, brushes, plates, the ground-changed payload, edit access, save results and slot references, and the per-terrain runtime settings.
#include "TerrainBlueprintTypes.h"
- kCmPerMetre constant
The one conversion between Unreal units and the terrain's (the Tier 3 boundary).
- CmToMetres function in OrbdaleTerrain::Units
Centimetres to metres.
- MetresToCm function in OrbdaleTerrain::Units
Metres to centimetres.
- CmToMm function in OrbdaleTerrain::Units
Centimetres to whole millimetres, rounded half away from zero (as Native::MetresToMm rounds metres).
- MmToCm function in OrbdaleTerrain::Units
Whole millimetres to centimetres.
- ToTerrain function in OrbdaleTerrain::Units
A world position, cm, as Tier-1 world metres.
- ToUnreal function in OrbdaleTerrain::Units
A Tier-1 world position, metres, as an Unreal world position, cm.
- EOrbdaleTerrainSurface enum
Which ground a query reads.
- EOrbdaleTerrainPrecision enum
How exact a ground answer is.
- EOrbdaleTerrainChangeCause enum
Why the ground changed.
- FOrbdaleTerrainGroundChange struct
The ground changed under Bounds.
- EOrbdaleTerrainEditAccess enum
Whether an edit would be accepted now, and if not why.
- EOrbdaleTerrainBrushKind enum
What a sculpt brush does.
- EOrbdaleTerrainStampBlend enum
How a Stamp's target meets the ground.
- FOrbdaleTerrainBrushMaskId struct
A brush mask named by its content hash: the 64-bit hash of its canonical bytes, which is what a sculpt record carries.
- EOrbdaleTerrainBrushRegistration enum
How registering a brush mask with a terrain ended.
- FOrbdaleTerrainBrushMaskInfo struct
What a terrain's registry says about one mask.
- EOrbdaleTerrainFalloff enum
Brush falloff, all polynomial.
- EOrbdaleTerrainFlattenDirection enum
Which way a Flatten brush may move the ground.
- EOrbdaleTerrainLoadResult enum
Outcome of loading terrain bytes.
- EOrbdaleTerrainSaveResult enum
Outcome of writing a terrain save file.
- FOrbdaleTerrainSaveOptions struct
What a terrain save keeps (editor authoring layer).
- FOrbdaleTerrainSaveRef struct
A terrain save beside a game's save slot, as the game keeps it in its own USaveGame: the file the terrain wrote and the hashes that pair it with this game save.
- FOrbdaleTerrainSlotSaveResult struct
What saving the terrain to a slot did.
- FOrbdaleTerrainBrushBP struct
One brush application, in Unreal units, for Blueprint and game input.
- FOrbdaleTerrainSplatChannel struct
One channel of a registered splat: a paint layer and the mask that weights it.
- FOrbdaleTerrainSplat struct
A splat brush as a terrain holds it: up to four channels, each a paint layer and a registered mask, in the fixed order red, green, blue, alpha.
- SplatSteps function in OrbdaleTerrain::Units
The Paint steps of one splat dab: Dab with its Kind set to Paint, and each used channel's layer and mask, in channel order (red, green, blue, alpha).
- ToBrush function in OrbdaleTerrain::Units
A Blueprint brush as Tier 1 states it: fixed point, millimetres relative to the terrain origin.
- ToSculptLimits function in OrbdaleTerrain::Units
The sculpt limits, cm, as the authority's millimetre rules.
- FromSculptLimits function in OrbdaleTerrain::Units
The authority's millimetre rules in cm: the inverse of ToSculptLimits, exact for whole millimetres.
- FOrbdaleTerrainPlateBP struct
An area earthwork as Blueprint states it: a building pad, yard or apron.
- FOrbdaleTerrainRuntimeSettings struct
Runtime settings of one terrain, edited on
AOrbdaleTerrainActor.
TerrainChunkPosts.h
Immutable per-chunk heights and ground class built from a ground query, with the paint held as the Tier 1 planes; heights in cm relative to the chunk origin, stored as whole millimetres.
#include "TerrainChunkPosts.h"
- kTerrainHoleClass constant
Ground-class value that marks a hole in Channels::GroundClass (collision and navigation skip it): Chaos skips the cell (TNumericLimits<uint8>::Max()).
- FTerrainChunkPosts struct
The heights of one chunk, read once from a published snapshot and shared, immutable, by everything downstream of the ground: the chunk's collision field and its render chunk.
- FOnTerrainChunkPostsReady delegate
A chunk's heights are ready, or changed.
- FOnTerrainChunkEvicted delegate
A chunk left the residency set; drop everything built for it.
TerrainRenderSettings.h
Terrain render tier, far-detail and runtime-virtual-texture mode enums, and the render settings struct for LOD, far field and shadows.
#include "TerrainRenderSettings.h"
- EOrbdaleTerrainRenderTier enum
Which renderer draws a terrain.
- EOrbdaleTerrainFarDetail enum
How much terrain detail the far field keeps between the near chunks and the distant atlases.
- FOrbdaleTerrainFarNormals struct
The far ring's normal-only level and its radius: finer slopes for the lighting of the distant ground, on top of the far detail preset, without more triangles.
- EOrbdaleTerrainRvtMode enum
How the heightfield tier's near chunks get their colour: the layer blend per pixel, or a runtime virtual texture.
- FOrbdaleTerrainRenderSettings struct
How a terrain renders: tier, LOD, far field and shadow invalidation (Tier 3 authoring data).
Tools/OrbdaleTerrainBrushFalloff.h
The brush falloff curve as the runtime brush tool draws it (HUD profile plot and ground contour rings).
#include "Tools/OrbdaleTerrainBrushFalloff.h"
- EvaluateFalloff function in OrbdaleTerrain::Tool
Brush strength factor at a normalised distance, 0 to 1.
- SolveFalloffContour function in OrbdaleTerrain::Tool
Normalised distance at which the brush strength factor falls to Level.
- FFalloffContour struct
One contour of the falloff on the ground.
- ComputeFalloffContours function in OrbdaleTerrain::Tool
The radii of the strength contours inside a brush.
Tools/OrbdaleTerrainBrushToolComponent.h
The runtime brush tool: input, brush state, HUD and cursor ring over the sculpt component.
#include "Tools/OrbdaleTerrainBrushToolComponent.h"
- FOrbdaleTerrainBrushToolState struct
The brush tool's state, for a HUD and for tests (Tier 3 value, no object references).
- UOrbdaleTerrainBrushToolComponent class
A brush tool a game drops onto a player controller: Enhanced Input for the verbs, a text HUD and a cursor ring drawn on the terrain, over
UOrbdaleTerrainSculptComponent.