Orbdale Terrain · OrbdaleTerrain module · member function
UOrbdaleTerrainSubsystem::
ApplySculptRecord
BlueprintApply one encoded sculpt record (a command or an undo/redo patch) received from the game's replication.
Declaration
UFUNCTION(BlueprintCallable, Category="Orbdale|Terrain|Sculpt")
EOrbdaleTerrainSculptResult ApplySculptRecord(const TArray<uint8>& RecordBytes);The graph as text
- Apply Sculpt Record (function call; Target is Orbdale Terrain Subsystem)
- In Target (self object): self
- In Record Bytes (array of Byte): not connected
- Out Return Value (EOrbdaleTerrainSculptResult): not connected
- Header
#include "OrbdaleTerrainSubsystem.h"- Module
PublicDependencyModuleNames.Add("OrbdaleTerrain");in your module’s Build.cs.- Stability
- Stable: changes within a major version only add.
- Thread
- Game thread.
- Blueprint
- Apply Sculpt Record, in Orbdale › Terrain › Sculpt
Description
On the authority it is a client's request. A command is validated against the sculpt limits and re-stamped: its stroke id becomes the authority's (a BeginStroke request binds the client's id to the stroke it opens), and the step index is the authority's own. It is then applied and the authoritative record broadcast. A patch is a request to undo (UndoPatch) or redo (RedoPatch): only its version and kind are read, so EncodeSculptPatch of a patch without tiles is a valid request.
On a replica it is the authority's record. It is queued and applied in order by the tick, never skipped: a record over ground that is still loading holds the queue.
Parameters
| Name | Type | Default | Meaning |
|---|---|---|---|
RecordBytes | const TArray< | — | As OnSculptRecordBP (or a request encoder) delivered them. |
Returns
What the record did; Pending on a replica means queued. Malformed bytes, Refused (outside the limits), ReadOnly (an editor world or a call from a listener).
Game thread. One open stroke at a time: requests of two clients interleave.