World Streaming reference

Field names follow headers under Gems/WorldStreaming/Code/Include/WorldStreaming/ and serialize reflection. Only author-facing fields are listed. Deep APIs: IWorldStreamingSystem.h.

WorldStreamingConfigComponent (bake-time)

Lives on the WorldConfig entity of the level root Prefab. Bake reads it and strips it—it never reaches the runtime Root Spawnable and has no component-panel editing. Written by WorldStreaming_Level, Migration Tool, or AuthorWorld* events.

FieldDescription
WorldGuid / m_worldGuidWorld identity (MP handshake, bake aggregation)
CellIdSalt / m_cellIdSaltCellId hash salt; regenerate on grid layout change
Grids / m_gridsGrid level list
Layers / m_layersContent Layer descriptors
HlodLayers / m_hlodLayersHLOD layer descriptors

WorldStreamingGridDesc

FieldDefaultDescription
m_gridLevel0Lower = finer when multiple grids
m_cellSize128 mCell edge length
m_defaultLoadRadius / m_defaultActivateRadius256 / 128 mFallback radii
m_verticalPartitioning + m_cellSizeZoffVertical (Z) grid
m_singleTierActivationoffSkip Loaded warmup
m_use2DDistanceoffXY-plane distance on vertical grids
m_streamingPriority0Budget ordering bias
m_gridOriginD(0,0,0)Origin offset; changing re-partitions

Narrative: Authoring.

WorldStreamingMemberComponent (optional)

Ordinary entities do not need this component.

FieldDefaultDescription
IsSpatiallyLoaded / m_isSpatiallyLoadedtruefalse = AlwaysLoaded
RuntimeGridLevel / m_runtimeGridLevel0xFF (inherit)Explicit target grid
LayerId / m_layerId0Content Layer
BundleGroupId / m_bundleGroupId0Strong co-load group
DependentLoadTargetsemptyTargets must be ≥ Loaded before activate
ExcludeFromHlod / m_excludeFromHlodfalseExclude static meshes from HLOD
SoftReferenceTargetsemptySoft cross-cell refs

WorldStreamingStreamingSourceComponent

FieldDefaultDescription
m_loadRadius / m_activateRadius256 / 128 mLoaded / Activated rings
m_targetGridLevel0xFFAll grids
m_targetGridLevelMask0Non-zero overrides single level
m_targetHlodLayerId / m_targetHlodLayerMask0xFFFF / 0HLOD-only targeting
m_priorityDefaultLow / Default / High / Critical
m_enabledtrue
m_shapesemptyNon-empty ignores radii
m_orientShapesToSourcefalseShapes follow entity orientation
m_targetBehaviorIncludeExclude = carve
m_loadingRangeScale1.0× global StreamingRangeScale
m_predictVelocityfalsePrefetch; prediction never Activates
m_debugName / m_debugColorempty / 0Debug label / tint

Narrative: Runtime streaming.

WorldStreamingLayerDesc / HlodLayerDesc

Summaries live in Content Layers and HLOD. Key defaults:

DescriptorNotable defaults
LayerFlags Runtime + EnabledByDefault; m_parentLayerId = 0xFFFF
HLODSource 0 → target 1; policy Merge (0); m_loadingRange 2048 m; m_requiresRegionMask true

Bake-injected components

Authors normally do not add these by hand:

ComponentRole
WorldStreamingCellComponentOwning cellId (Entity → Cell lookup)
WorldStreamingEntityKeyComponentStable entity key for cross-cell references

Multiplayer and bridge components

ComponentPurpose
WorldStreamingSyncNetworkComponentOn networked player Prefab; cell / layer state sync
WorldStreamingAtomBridgeComponentHLOD fragment show/hide → Atom (AtomMode = Bridge)
WorldStreamingTerrainVegBridgeComponentCell enter/leave → Terrain / Vegetation
WorldStreamingNavMeshBridgeComponentCell enter/leave → Recast

Bridges mount from Bridge/*Mode Registry keys—no manual placement. See Bridges and Multiplayer.

Bus and interface index

APIHeader / moduleRole
WorldStreamingRequestBusWorldStreamingBus.hScript runtime requests
WorldStreamingScriptNotificationBussameScript notifications
WorldStreamingNotificationBussameC++ notifications
WorldStreamingStreamingSourceProviderRequestBussamePull streaming sources
EditorWorldStreamingRequestBusEditorBake, focus, AuthorWorld*, shards
WorldStreamingMigrationRequestBusBuildersLevel migration
WorldStreamingInterface / IWorldStreamingSystemIWorldStreamingSystem.hFull C++ capability surface
IWorldStreamingPolyPartitionBridgeoptionalPolyTerrain diagnostics

Event catalogs: Scripting.

Behavior constants (script)

FamilyValues
CellRuntimeState_*Unloaded 0 / Loaded 2 / Activated 4
LayerRuntimeState_*Unloaded 0 / Loaded 1 / Activated 2
SourcePriority_*Low 0 / Default 1 / High 2 / Critical 3
TargetBehavior_*Include 0 / Exclude 1
StreamingPerformance_*Ok 0 / Slow 1 / Critical 2

Asset types

ExtensionRole
.wsworldAuthoring descriptor
.wsmanifestRuntime Manifest
.wschunkOptional Manifest chunk
Cell / HLOD SpawnablesPer-cell runtime products
  • Registry defaults: Gems/WorldStreaming/Registry/WorldStreaming.setreg

Copyright © 2026 DawnEngine. All rights reserved.

DawnEngine is a commercial 3D engine distributed under the DawnEngine end-user license agreement. Engine binaries and source are proprietary and are not covered by the licenses below.

Documentation only: the prose and templates on this site are a derivative work of Open 3D Engine (O3DE) documentation by the O3DE Contributors, used under CC BY 4.0 (documentation content), Apache 2.0 (site code), and the MIT license (inline code samples).

The open-source 3D engine that DawnEngine is built on top of is Open 3D Engine . DawnEngine is not affiliated with, endorsed by, or sponsored by The Linux Foundation or the O3DE project. “O3DE” and “Open 3D Engine” are trademarks of The Linux Foundation.