levels-and-world-partition

Structure and stream Unreal Engine 5 worlds using World Partition, Data Layers, and Level Instances.

1|Updated Sep 6, 2026
One-click install
npx skills add https://github.com/ziyarduc/Baran-bk-game --skill levels-and-world-partition-ziyarduc
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: levels-and-world-partition
Source: https://github.com/ziyarduc/Baran-bk-game/tree/main/.agents/skills/levels-and-world-partition
Command: npx skills add https://github.com/ziyarduc/Baran-bk-game --skill levels-and-world-partition-ziyarduc

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Large Unreal Engine 5 worlds cannot stay fully resident in memory, and choosing between World Partition, Data Layers, Level Instances, and legacy sublevel streaming is error-prone without grounded C++ API guidance. This Skill provides engine-source-verified patterns for organizing, streaming, and toggling world content at runtime. ## Core Features & Use Cases - World Partition Streaming: Configure spatial-hash grids, streaming sources via UWorldPartitionStreamingSourceComponent, and runtime cell loading for open worlds. - Data Layers & Level Instances: Toggle runtime content sets (day/night, quest states) with UDataLayerManager and build reusable prefabs with ALevelInstance and APackedLevelActor. - Legacy Sublevel Streaming: Load and unload named sublevels with UGameplayStatics::LoadStreamLevel for projects without World Partition. - Use Case: Building a 3.2km x 2.1km real-scale city map for a battle royale game, you use World Partition grid streaming around player controllers, Data Layers for storm-phase content, and Packed Level Actors for dense city blocks. ## Quick Start Ask the assistant to set up World Partition streaming with a streaming source component and runtime Data Layer toggling for your Unreal Engine 5 level.

Frequently Asked Questions about levels-and-world-partition

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I stream levels in Unreal Engine 5 with World Partition?▼

World Partition streams automatically using a spatial-hash grid that loads cells around streaming sources such as player controllers. Configure Cell Size and Loading Range in World Settings, and add UWorldPartitionStreamingSourceComponent for custom viewpoints like cameras or teleport targets.

World Partition vs sublevel streaming in Unreal Engine?▼

World Partition auto-streams grid cells around streaming sources and suits open worlds, while legacy sublevels use explicit LoadStreamLevel and UnloadStreamLevel calls for small games with discrete zones. World Partition with OFPA is the default for new UE5 projects.

How do I toggle Data Layers at runtime in Unreal Engine C++?▼

Call UDataLayerManager::SetDataLayerInstanceRuntimeState with EDataLayerRuntimeState values Unloaded, Loaded, or Activated. Get the manager via GetWorld()->GetDataLayerManager(); UDataLayerSubsystem is deprecated since UE 5.3.

Does World Partition work on dedicated servers?▼

By default World Partition does not stream on dedicated servers and loads all actors. You can change this per level with EWorldPartitionServerStreamingMode or the wp.Runtime.EnableServerStreaming console variable.

Why do my actor pointers break with World Partition?▼

Hard pointers to actors in other cells become stale when those cells unload. Use TSoftObjectPtr and re-acquire the actor through async loading instead of holding direct references across streaming boundaries.

When should I use Packed Level Actors instead of Level Instances?▼

Use APackedLevelActor for dense static geometry like city blocks, since it bakes meshes into instanced static mesh components and reduces draw calls. Use ALevelInstance when the chunk contains non-static-mesh actors, since packing only supports Static Meshes.