Skip to content
Brass Orrery

Orrery Terrain · Blueprint

Blueprint nodes

291 nodes in 23 palette categories, each drawn as the editor shows it, with its pins and the C++ behind it.

Make and Break

Orrery › Terrain › Brush

  • Bake from Pixels

    Bake raw single-channel pixels into this asset, replacing any baked mask (game code and tests; the editor bakes from SourceTexture or TiffFile).

  • Bake from Pixels

    Bake raw 8-bit RGBA pixels into this asset, replacing any baked masks (game code and tests; the editor bakes from SourceTexture).

  • Bake from Texture

    Bake a texture into this asset with the asset's Usage, Side and Depth.

  • Bake from Texture

    Bake a texture into this asset.

  • Find Brush

    The first brush whose asset name is Name, or null.

  • Get Brush Mask Info

    What the registry says about a mask.

  • Get Channel Layer

    The layer a channel paints: -1 when the channel is left out.

  • Get Channel Mask Id

    The id (content hash) of a channel's baked mask; invalid when the channel is not baked.

  • Get Mask Bits

    Bits a sample of the baked mask; 0 when not baked.

  • Get Mask Id

    The mask's id: its content hash, which a sculpt record carries.

  • Get Mask Side

    Samples a side of the baked mask; 0 when not baked.

  • Get Splat

    The splat as the asset holds it, without a terrain: each used channel's layer and mask id, in channel order.

  • Has Mask

    Whether the asset holds a baked mask.

  • Has Masks

    Whether the asset holds at least one baked channel mask that a layer uses.

  • Is Brush Mask Known

    Whether this terrain holds the mask, so a brush naming it applies.

  • Register Brush

    Register a brush asset's baked mask with this terrain, so brushes naming its id apply.

  • Register Brush Mask from Pixels

    Register raw single-channel pixels as a mask, baked with the asset-free defaults of the usage (256 x 256 at 8 bits for a strength mask, 1024 x 1024 at 16 for a height mask).

  • Register Brush Set

    Register every baked brush of a set.

  • Register Splat

    Register a splat asset's baked channel masks with this terrain, and return the splat to paint with.

  • Unregister Brush Mask

    Stop holding a mask.

Orrery › Terrain › Edit

Orrery › Terrain › Editor

  • Activate Terrain ModeEditor only

    Activate the terrain editor mode in the level editor.

  • Apply Editor StrokeEditor only

    Apply one brush stroke as the editor mode's brush tool applies it, as one undoable "Terrain stroke" transaction.

  • Bake AuthoringEditor only

    Bake Actor's authoring layer into a new tile store beside its map and re-point the actor at it.

  • Bake AuthoringEditor only

    Bake World's terrain, as Manage, Bake does without its dialog (UOrreryTerrainBake::BakeAuthoring).

  • Check Import CurrentEditor only

    Python and Blueprint entry: IsImportCurrent as a struct, so a stale store still gives Python its reason.

  • Click Active ToolEditor only

    A click of the active feature tool (Plate, Corridor, FeatureList) or Stamp tool (it places a stamp) at Location_m, world m.

  • Configure Active BrushEditor only

    Give the active brush tool Stroke's settings (Stroke.Tool and Path_m are not used), so its ring and HUD show them; Stroke.bInvert holds Shift.

  • Configure Active StampEditor only

    Give the active Stamp tool its settings.

  • Describe Geo Tiff FileEditor only

    Parse a GeoTIFF without importing it: what v1 would read, or why it would refuse.

  • Drag Active ToolEditor only

    A press at From_m, a drag to To_m and a release of the active brush tool (a stroke) or Stamp tool (a stamp centred on From_m whose radius and angle the drag sets), world m, through the mouse's own path.

  • Get Active ToolEditor only

    The active tool's id; empty when none.

  • Get Active Tool HudEditor only

    The HUD lines the active tool draws this frame (brush, Stamp and feature tools), for scripted checks.

  • Get Editor TerrainEditor only

    World's terrain actor, the one its terrain was created from; null when it has no terrain.

  • Get Editor WorldEditor only

    The level editor's world; null without one (a commandlet).

  • Get State HashEditor only

    The terrain's StateHash once pending sculpt bakes are done (the bits of a uint64); 0 without a terrain.

  • Has Unbaked AuthoringEditor only

    Whether Actor names an authoring asset that still holds a payload: what the cook refuses and the bake commandlet's -Check reports.

  • Has Unbaked AuthoringEditor only

    Whether World's terrain holds authored edits the bake has not folded in yet: live ones not yet captured, or a captured payload.

  • Import Geo TiffEditor only

    Python and Blueprint entry: ImportGeoTiffFiles with the default options and a decimation.

  • Import HeightmapEditor only

    Python and Blueprint entry: ImportHeightmapFile with the default options.

  • Import LandscapeEditor only

    Python and Blueprint entry: ImportLandscapeToStore with the default options, the given paint switch and the hide switch.

  • Import Raw 16Editor only

    Fill a heightmap source asset from a little-endian 16-bit RAW file.

  • Is Stamp PendingEditor only

    Whether the active Stamp tool has a stamp waiting for its ground (poll it after a click over unloaded ground).

  • Look AtEditor only

    Point every perspective level viewport at the ground under Target_m (world X and Y, m) from Distance_m away, Pitch_deg below the horizon, looking along Yaw_deg; realtime on.

  • Make New Terrain PropertiesEditor only

    A new-terrain properties object with the user's last values (Manage, New): set its fields, then pass it to NewTerrain.

  • New TerrainEditor only

    Create a terrain in World, or replace the source of its terrain, as Manage, New's Create Terrain button does: one undoable "New terrain" transaction.

  • Place CorridorEditor only

    Place an editor-owned corridor, as the Corridor tool does.

  • Place PlateEditor only

    Place an editor-owned plate, as the Plate tool's Enter does: one undoable transaction, kept by the authoring layer and baked by Bake.

  • Press Tool KeyEditor only

    Press a key in the terrain mode as the keyboard does in a level viewport: Enter commits a plate or corridor, Escape cancels (a commit waiting for its ground first), BackSpace takes a vertex back, Delete removes the selected feature.

  • Sample Ground HeightsEditor only

    Exact ground heights at Points_m (world X and Y, m), waiting until the ground there is resident.

  • Set Active Brush MaskEditor only

    Pick Brush in the active brush, paint or Stamp tool's palette, as a click on its button does, and set the mask's angle.

  • Set Background ThrottleEditor only

    Turn the editor's background throttle ("Use Less CPU when in Background") on or off, in memory only.

  • Set Brush Preview AtEditor only

    Put the active brush tool's ring (or the Stamp tool's ghost) at Location_m (world X and Y, m) as a hover would, and hold it there while the mouse crosses the viewport.

  • Start ToolEditor only

    Start a tool of the mode's palette, as its button does: Sculpt, Smooth, Flatten, Paint, GroundClass, Holes, Plate, Corridor, FeatureList or New.

  • Take Editor ShotEditor only

    Write a PNG of the largest editor window after Delay_s, drawing the level viewports first.

  • Undo Editor EditEditor only

    Undo the editor's last transaction (a stroke, a feature, New) and let the terrain settle.

Orrery › Terrain › Events

Orrery › Terrain › Experimental

  • EvaluateExperimental

    What a Rebuild would do now, with nothing changed: replaces the linked feature in the evaluation.

  • Get Feature IdExperimental

    The linked feature's id (by FeatureId, else by OwnerKey); FeatureId when the terrain holds neither.

  • Get StateExperimental

    Where the feature stands against the terrain now.

  • Is StaleExperimental

    True when the state is Stale: the feature exists, but the spline and parameters as they are now do not build it (they changed since the last build, or another author, a client's request included, replaced the feature).

  • RebuildExperimental

    Commit the feature from the spline as it is now: replaces the linked feature in place (same id), or adds one.

  • Rebuild Spline Feature (Async)Experimental

    Rebuild a spline feature once its ground is resident; on a client, ask the server to.

  • Remove FeatureExperimental

    Remove the linked feature and clear the link (the state becomes Unlinked).

Orrery › Terrain › Follow

  • Bind Event to On Ground Moved

    Called after the actor's height changed or it was cleared or restored.

  • Get Stats

    What is tracked and queued.

  • Is Cleared

    Whether the ground has cleared the actor now (hidden, or about to be destroyed).

  • Is Settled

    Whether nothing is waiting: every registration and every journal entry seen has been applied.

  • Refresh Follow

    Drop the records of instances that are gone and register those that are new, on a component already tracked.

  • Register for Follow

    Follow a component, or tell the subsystem its instances changed in a way it cannot see.

  • Reregister

    Register again at the actor's current place and height (after moving it on purpose).

  • Track Instanced Component

    Follow one instanced component with explicit rules; Blueprint form of TrackComponent.

  • Untrack Component

    Stop following a component; instances stay where they are, hidden ones are restored first.

Orrery › Terrain › Materials

  • Check Rvt ReadinessEditor only

    Check that Parent can write the terrain RVT, and log one warning per problem.

  • Connect Customized UVEditor only

    Connect an expression's output to a material's customized UV, which Python cannot name (EMaterialProperty hides them).

  • Find WrapperEditor only

    The existing wrapper of Parent in Folder, or null.

  • Make Layer TableEditor only

    Create or refill the layer table: a 256 x 1 RGBA32F texture, one texel per paint layer id, that the terrain material reads with Load (layer ids are 8-bit, so a table replaces four-layers-per-vector parameters).

  • Make Texture ArrayEditor only

    Create or refill a Texture2DArray from same-sized source textures (a python script cannot reach the array's source-building path).

  • Set Wrapper RvtEditor only

    Point a wrapper's RVT sample parameter ("TerrainRvt", in MF_TerrainRvt) at an RVT other than the material's default.

  • Wrap Actor MaterialEditor only

    The wrapper of a terrain actor's Material, in the actor's wrapper folder, made if missing.

  • Wrap MaterialEditor only

    The wrapper of Parent in Folder, made and saved if missing.

  • Wrap Material AsEditor only

    The wrapper of Parent at an exact package name, made and saved if missing, re-parented if it wraps another material.

  • Wrap MaterialsEditor only

    WrapMaterial for each entry, in order; null entries give null.

Orrery › Terrain › Net

  • Append Terrain Checkpoint

    Append a Checkpoint record to the stream: SyncHash, the sculpt digest and the next feature id here and now.

  • Apply Sculpt Request Bytes

    Blueprint form of ApplySculptRequest: a sculpt command, or an undo or redo patch (its tiles are ignored), as the sculpt component's OnCommandRequested bytes.

  • Apply Terrain Record

    Apply one of the authority's records on a replica, in Seq order: every kind in one order (sculpt and stack ops share it, since the keep-out guard reads the stack).

  • Get Join RefusalExperimental

    Why the server refused this client's join; None while it has not.

  • Get Net RoleExperimental

    Server, Client, or None (standalone, or replication off).

  • Get Net StatsExperimental

    Counters of this side: records, bytes, requests, checkpoints, rejoins.

  • Get Next Record Seq

    The position the authority's next record gets: 1 before the first.

  • Is Client LiveExperimental

    A client past its join: it applies records and its edits go to the server.

  • Is Own FeatureExperimental

    The default owner rule: the requesting player's request inserted the feature (Author is RequestAuthor, not 0).

  • Load Replica Snapshot

    A replica's join: load the authority's save bytes, taken when its next record was Seq + 1, and apply its records from Seq + 1 on.

Orrery › Terrain › Paint

  • Find Layer

    The index of the layer called Name, or -1.

  • Get Layer

    The entry at Index, or false when Index is not a layer of this set.

  • Num Layers

    The number of usable layers: Layers, capped at kMaxLayers.

Orrery › Terrain › Query

Orrery › Terrain › Rendering

Orrery › Terrain › Save

Orrery › Terrain › Sculpt

  • Apply Brush

    Apply one brush step, stated in world cm, under the sculpt limits.

  • Apply Sculpt Record

    Apply one encoded sculpt record (a command or an undo/redo patch) received from the game's replication.

  • Apply Splat

    Apply one splat dab: one masked Paint step for each used channel of the splat, in the order red, green, blue, alpha, inside the open stroke, so the whole stroke is one undo however many dabs it holds.

  • Begin Drag

    Press: open a stroke at the cursor and apply its first step.

  • Begin Stroke

    Start a stroke, ending an open one first (its EndStroke record and events go out before).

  • End Drag

    Release: apply the last partial step (one step at the cursor when time has passed since the previous step), then close the stroke (its volumes arrive on OnStrokeEndedBP).

  • End Stroke

    Finish the open stroke: its before-image joins the bounded ring; broadcasts its record, OnStrokeEndedBP and OnSculptStroke.

  • Get Cursor World Position
  • Get Dab Count

    Dabs the current or last drag has taken, the first one included.

  • Get Last Sculpt Refusal

    Why the authority's last Refused brush step was refused, in words (a limit, an unknown mask, a stamp over the limits); empty when it has refused nothing.

  • Get Queued Steps

    Brush steps waiting for the ground under them to load.

  • Get Sculpt Limits

    The limits this terrain enforces, cm (its settings when it was created); the defaults without a terrain.

  • Get Sculpt State

    The sculpt tool's state: open stroke, undo and redo depth, ring bytes, replica queue.

  • Get Terrain
  • Has Cursor Target

    False when the cursor ray missed the ground; the brush outline should not be drawn.

  • Is Dragging
  • Is Waiting for Ground

    True while anything waits for cold ground: steps, or a release, press, Undo or Redo queued behind them.

  • Redo

    Redo the stroke the last Undo took back; queued like Undo while steps wait.

  • Redo Stroke

    Put back the stroke the last UndoStroke took back.

  • Stamp Once

    Apply one brush as a one-dab stroke at once: a stamp.

  • Undo

    Undo the newest stroke in the terrain's ring (ends an open drag first).

  • Undo Stroke

    Undo the most recent stroke still in the ring, ending an open stroke first.

Orrery › Terrain › Sculpt › Brush

  • Clear Splat

    Return to the plain brush: a drag lays Brush again.

  • Get Splat

    The splat a drag lays; empty when the brush is not a splat.

  • Scale Radius

    Multiply the radius (mouse wheel), clamped to the terrain's sculpt limits.

  • Set Brush Kind
  • Set Splat

    Make the brush a splat: each stroke step of a drag, and SplatOnce, lays up to four masked Paint steps (red to alpha) at the dab's centre and angle instead of one brush step.

Orrery › Terrain › Sculpt › Cursor

Orrery › Terrain › Sculpt › Network

Orrery › Terrain › Stats

Orrery › Terrain › Streaming

Orrery › Terrain › Tile Store

Orrery › Terrain › Tool

  • Begin Stroke

    Open a stroke at the cursor and apply its first step.

  • Cycle Brush Kind

    Step through BrushKinds, wrapping.

  • Cycle Falloff

    Step through the falloff shapes Smooth, Linear, Constant, wrapping.

  • Cycle Paint Layer

    Step through the paint layers, wrapping.

  • End Stroke

    Close the open stroke.

  • Event DrawToolHUD

    Draws the HUD text and the cursor ring on the player's canvas, once per frame while the tool is active.

  • Get Hud Rect

    The rectangle the tool's text and falloff plot covered in the last HUD draw, canvas pixels; invalid when nothing was drawn.

  • Get HUDLines

    The HUD text, one entry per line, as the default HUD shows it.

  • Get Sculpt Component

    The sculpt component the tool drives; added to the owner on first use when it has none.

  • Get Tool State

    A snapshot of the tool for a HUD of your own.

  • Is Pointer Blocked

    Whether SetPointerBlocked holds the stroke key back now.

  • Is Scripted Stroke Running
  • Is Tool Active
  • Redo

    Redo the stroke the last Undo took back.

  • Scale Radius

    Multiply the radius by Factor, clamped to the terrain's sculpt limits (at least 1 m).

  • Scale Strength

    Multiply the strength by Factor, clamped to the terrain's sculpt limits (at least 1 cm).

  • Set Brush Kind

    Select a brush kind.

  • Set Falloff

    Select the falloff toward the brush edge, for every brush kind.

  • Set Falloff Start

    Set where the falloff starts: the inner part of the radius at full strength, for the current brush kind (Flatten keeps its own, every other kind shares one).

  • Set Paint Layer

    Select the paint layer the Paint brush writes.

  • Set Pointer Blocked

    Keep the stroke key from opening a stroke, and hide the ring: for a game whose pointer is over its own HUD, or busy turning the view.

  • Set Tool Active

    Turn the tool on or off.

  • Start Scripted Stroke

    Run a whole stroke along a straight line with no pointer: for automation, tutorials and tests.

  • Step Falloff Start

    Move the falloff start by one FalloffStartStep, snapped to the step, between 0 and 1 - step.

  • Undo

    Undo the newest stroke (ends an open one first).

Orrery › Terrain › Tool › Brush

  • Get Splat Brush

    The splat SetSplatBrush set; empty when none.

  • Set Brush Angle

    Set the mask base angle, degrees from +X toward +Y; the rotation mode adds to it.

  • Set Brush Mask

    Make a baked brush asset the tool brush: register its mask with the terrain, name it in the brush, take the asset's default angle, radius and aspect, and switch to Spacing steps (a patterned mask is laid evenly).

  • Set Rotation Mode

    Set how each dab turns the mask.

  • Set Spacing

    Lay dabs by distance: one each time the pointer has moved Fraction of the radius.

  • Set Splat Brush

    Make a baked splat asset the tool's splat: register its channel masks with the terrain, keep the splat for SplatAt and for drags (the sculpt component lays it at every stroke step), and take the asset's default angle and radius.

  • Splat At

    Lay the splat once at a place, as a one-dab stroke (one undo): up to four masked Paint steps, red to alpha.

  • Stamp At

    Stamp the brush once at a place, as a one-dab stroke (one undo).

Orrery › Terrain › Tool › HUD

  • Is Hud Hidden

    Whether the tool draws nothing now: bShowHUD is off, or the process runs with -SampleShots.

Overridable functions

A Blueprint of the class overrides these from My Blueprint, Functions, Override; they have no node to place.

  • Can Add Brush Mask

    Whether Controller may upload a brush mask the server does not hold, so its brush steps can use it.

  • Can Change Feature

    Whether Controller may replace or remove an existing feature: the owner check, asked before CanEdit.

  • Can Edit

    Whether Controller may make this edit.

  • Get Custom Cursor Ray

    Supply the cursor ray yourself.