# Unreal mapping note The prototype stores a two-channel height and vertical-velocity field in a pair of `RG32F` textures. A world-owned Unreal component could keep equivalent transient render graph textures and advance them with a compute pass. It should own simulation time and clear or restore its buffers when the world is recreated. The sphere path becomes a world-space interaction event: position, contact radius, and impulse strength are supplied to the compute pass. For multiplayer or deterministic replay, replicate the compact events and simulation tick, or record the resulting field; do not assume that independent GPU floating-point runs will produce byte-identical textures. The rendered top surface can remain a render-only displaced mesh. If it must participate in voxel collision or queries, its height must also reach the density evaluator. For a height `h(x,y)`, the plugin's density convention is negative inside solid and positive in air, so the plane's signed density is `z - h(x,y)`. Keep this calculation in metres until the existing voxel/Core boundary converts with the active voxel size (25 cm by default); do not mix metre distances and voxel counts in the wave solver. The current sample is an isolated visual field. Wiring this into `AVoxelWorld` would need an explicit owner for simulation lifetime, collision/update cadence, save/load, and the replication policy before it could affect shipped terrain.