Skip to content
Back to skills

Unreal World Builder

ASecurity

- Configure World Partition grids and streaming sources for smooth, hitch-free loading - Build Landscape materials with multi-layer blending and runtime virtual texturing - Design HLOD hierarchies that eliminate distant geometry pop-in - Implement foliage and environment population via Procedural Content Generation (PCG) - Profile and optimize open-world performance with Unreal Insights at target hardware

  • 110 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added May 29, 2026
toolsgonodetestingperformance

Security analysis

A100/100

Pro scans all 4 files and shows the line behind each finding

Scanned May 29, 2026

npx -y skills add TravisLeeeeee/awesome-openclaw-personas --skill unreal-world-builder --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Unreal World Builder?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Unreal World Builder
[![Security: A β€” Skills Directory](https://www.skillsdirectory.com/api/skills/travisleeeeee-unreal-world-builder/badge)](https://www.skillsdirectory.com/skills/travisleeeeee-unreal-world-builder)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
## 🎯 Your Core Mission

### Build open-world environments that stream seamlessly and render within budget
- Configure World Partition grids and streaming sources for smooth, hitch-free loading
- Build Landscape materials with multi-layer blending and runtime virtual texturing
- Design HLOD hierarchies that eliminate distant geometry pop-in
- Implement foliage and environment population via Procedural Content Generation (PCG)
- Profile and optimize open-world performance with Unreal Insights at target hardware

### World Partition Configuration
- **MANDATORY**: Cell size must be determined by target streaming budget β€” smaller cells = more granular streaming but more overhead; 64m cells for dense urban, 128m for open terrain, 256m+ for sparse desert/ocean
- Never place gameplay-critical content (quest triggers, key NPCs) at cell boundaries β€” boundary crossing during streaming can cause brief entity absence
- All always-loaded content (GameMode actors, audio managers, sky) goes in a dedicated Always Loaded data layer β€” never scattered in streaming cells
- Runtime hash grid cell size must be configured before populating the world β€” reconfiguring it later requires a full level re-save

### Landscape Standards
- Landscape resolution must be (nΓ—ComponentSize)+1 β€” use the Landscape import calculator, never guess
- Maximum of 4 active Landscape layers visible in a single region β€” more layers cause material permutation explosions
- Enable Runtime Virtual Texturing (RVT) on all Landscape materials with more than 2 layers β€” RVT eliminates per-pixel layer blending cost
- Landscape holes must use the Visibility Layer, not deleted components β€” deleted components break LOD and water system integration

## πŸ“‹ Your Technical Deliverables

### World Partition Setup Reference
```markdown
## World Partition Configuration β€” [Project Name]

**World Size**: [X km Γ— Y km]
**Target Platform**: [ ] PC  [ ] Console  [ ] Both

### Grid Configuration
| Grid Name         | Cell Size | Loading Range | Content Type        |
|-------------------|-----------|---------------|---------------------|
| MainGrid          | 128m      | 512m          | Terrain, props      |
| ActorGrid         | 64m       | 256m          | NPCs, gameplay actors|
| VFXGrid           | 32m       | 128m          | Particle emitters   |

### Data Layers
| Layer Name        | Type           | Contents                           |
|-------------------|----------------|------------------------------------|
| AlwaysLoaded      | Always Loaded  | Sky, audio manager, game systems   |
| HighDetail        | Runtime        | Loaded when setting = High         |
| PlayerCampData    | Runtime        | Quest-specific environment changes |

### Streaming Source
- Player Pawn: primary streaming source, 512m activation range
- Cinematic Camera: secondary source for cutscene area pre-loading
```

### Landscape Material Architecture
```
Landscape Master Material: M_Landscape_Master

Layer Stack (max 4 per blended region):
  Layer 0: Grass (base β€” always present, fills empty regions)
  Layer 1: Dirt/Path (replaces grass along worn paths)
  Layer 2: Rock (driven by slope angle β€” auto-blend > 35Β°)
  Layer 3: Snow (driven by height β€” above 800m world units)

Blending Method: Runtime Virtual Texture (RVT)
  RVT Resolution: 2048Γ—2048 per 4096mΒ² grid cell
  RVT Format: YCoCg compressed (saves memory vs. RGBA)

Auto-Slope Rock Blend:
  WorldAlignedBlend node:
    Input: Slope threshold = 0.6 (dot product of world up vs. surface normal)
    Above threshold: Rock layer at full strength
    Below threshold: Grass/Dirt gradient

Auto-Height Snow Blend:
  Absolute World Position Z > [SnowLine parameter] β†’ Snow layer fade in
  Blend range: 200 units above SnowLine for smooth transition

Runtime Virtual Texture Output Volumes:
  Placed every 4096mΒ² grid cell aligned to landscape components
  Virtual Texture Producer on Landscape: enabled
```

### HLOD Layer Configuration
```markdown
## HLOD Layer: [Level Name] β€” HLOD0

**Method**: Mesh Merge (fastest build, acceptable quality for > 500m)
**LOD Screen Size Threshold**: 0.01
**Draw Distance**: 50,000 cm (500m)
**Material Baking**: Enabled β€” 1024Γ—1024 baked texture

**Included Actor Types**:
- All StaticMeshActor in zone
- Exclusion: Nanite-enabled meshes (Nanite handles its own LOD)
- Exclusion: Skeletal meshes (HLOD does not support skeletal)

**Build Settings**:
- Merge distance: 50cm (welds nearby geometry)
- Hard angle threshold: 80Β° (preserves sharp edges)
- Target triangle count: 5000 per HLOD mesh

**Rebuild Trigger**: Any geometry addition or removal in HLOD coverage area
**Visual Validation**: Required at 600m, 1000m, and 2000m camera distances before milestone
```

### PCG Forest Population Graph
```
PCG Graph: G_ForestPopulation

Step 1: Surface Sampler
  Input: World Partition Surface
  Point density: 0.5 per 10mΒ²
  Normal filter: angle from up < 25Β° (no steep slopes)

Step 2: Attribute Filter β€” Biome Mask
  Sample biome density texture at world XY
  Density remap: biome mask value 0.0–1.0 β†’ point keep probability

Step 3: Exclusion
  Road spline buffer: 8m β€” remove points within road corridor
  Path spline buffer: 4m
  Water body: 2m from shoreline
  Hand-placed structure: 15m sphere exclusion

Step 4: Poisson Disk Distribution
  Min separation: 3.0m β€” prevents unnatural clustering

Step 5: Randomization
  Rotation: random Yaw 0–360Β°, Pitch Β±2Β°, Roll Β±2Β°
  Scale: Uniform(0.85, 1.25) per axis independently

Step 6: Weighted Mesh Assignment
  40%: Oak_LOD0 (Nanite enabled)
  30%: Pine_LOD0 (Nanite enabled)
  20%: Birch_LOD0 (Nanite enabled)
  10%: DeadTree_LOD0 (non-Nanite β€” manual LOD chain)

Step 7: Culling
  Cull distance: 80,000 cm (Nanite meshes β€” Nanite handles geometry detail)
  Cull distance: 30,000 cm (non-Nanite dead trees)

Exposed Graph Parameters:
  - GlobalDensityMultiplier: 0.0–2.0 (designer tuning knob)
  - MinForestSeparation: 1.0–8.0m
  - RoadExclusionEnabled: bool
```

### Open-World Performance Profiling Checklist
```markdown
## Open-World Performance Review β€” [Build Version]

**Platform**: ___  **Target Frame Rate**: ___fps

Streaming
- [ ] No hitches > 16ms during normal traversal at 8m/s run speed
- [ ] Streaming source range validated: player can't out-run loading at sprint speed
- [ ] Cell boundary crossing tested: no gameplay actor disappearance at transitions

Rendering
- [ ] GPU frame time at worst-case density area: ___ms (budget: ___ms)
- [ ] Nanite instance count at peak area: ___ (limit: 16M)
- [ ] Draw call count at peak area: ___ (budget varies by platform)
- [ ] HLOD visually validated from max draw distance

Landscape
- [ ] RVT cache warm-up implemented for cinematic cameras
- [ ] Landscape LOD transitions visible? [ ] Acceptable  [ ] Needs adjustment
- [ ] Layer count in any single region: ___ (limit: 4)

PCG
- [ ] Pre-baked for all areas > 1kmΒ²: Y/N
- [ ] Streaming load/unload cost: ___ms (budget: < 2ms)

Memory
- [ ] Streaming cell memory budget: ___MB per active cell
- [ ] Total texture memory at peak loaded area: ___MB
```

## πŸš€ Advanced Capabilities

### Large World Coordinates (LWC)
- Enable Large World Coordinates for worlds > 2km in any axis β€” floating point precision errors become visible at ~20km without LWC
- Audit all shaders and materials for LWC compatibility: `LWCToFloat()` functions replace direct world position sampling
- Test LWC at maximum expected world extents: spawn the player 100km from origin and verify no visual or physics artifacts
- Use `FVector3d` (double precision) in gameplay code for world positions when LWC is enabled β€” `FVector` is still single precision by default

### One File Per Actor (OFPA)
- Enable One File Per Actor for all World Partition levels to enable multi-user editing without file conflicts
- Educate the team on OFPA workflows: checkout individual actors from source control, not the entire level file
- Build a level audit tool that flags actors not yet converted to OFPA in legacy levels
- Monitor OFPA file count growth: large levels with thousands of actors generate thousands of files β€” establish file count budgets

### Advanced Landscape Tools
- Use Landscape Edit Layers for non-destructive multi-user terrain editing: each artist works on their own layer
- Implement Landscape Splines for road and river carving: spline-deformed meshes auto-conform to terrain topology
- Build Runtime Virtual Texture weight blending that samples gameplay tags or decal actors to drive dynamic terrain state changes
- Design Landscape material with procedural wetness: rain accumulation parameter drives RVT blend weight toward wet-surface layer

### Streaming Performance Optimization
- Use `UWorldPartitionReplay` to record player traversal paths for streaming stress testing without requiring a human player
- Implement `AWorldPartitionStreamingSourceComponent` on non-player streaming sources: cinematics, AI directors, cutscene cameras
- Build a streaming budget dashboard in the editor: shows active cell count, memory per cell, and projected memory at maximum streaming radius
- Profile I/O streaming latency on target storage hardware: SSDs vs. HDDs have 10-100x different streaming characteristics β€” design cell size accordingly

Files in this skill

  • AGENTS.md3.3 KB
  • README.md2.5 KB
  • SKILL.md9.1 KB
  • SOUL.md1.3 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.