Skip to content

Chapter 6 of 8

Actors, Levels, and Runtime Spawning

An Actor is the base class for any object that can be placed in a level, supporting transforms, replication, and spawning. Pawns, Characters, Static Mesh Actors, and Trigger Volumes all inherit from AActor. A Scene Component is an Actor component that has a transform and can be parented, while an Actor Component is reusable functionality without its own transform. Static and Skeletal Mesh components both extend Scene Components; Static Mesh renders non-deforming rigid geometry, while Skeletal Mesh renders geometry bound to a skeleton for skeletal animation, supporting Animation Blueprints and being used for characters and creatures. A USkeletalMesh is the on-disk asset holding the bone hierarchy and skinning data, whereas a USkeletalMeshComponent is the runtime scene component that plays animations and renders the mesh.

The distinction between a Level and a World is subtle but important. A Level is a saved collection of actors stored as a .umap file in the Content folder, while a World is the runtime instance containing one active persistent level, any loaded streaming sublevels, gameplay state, and physics. Levels can be created with File → New Level, choosing Empty, Basic, or another template, and saved with File → Save As. The World Partition feature in UE5 divides large levels into grid cells that stream automatically based on camera position, replacing traditional sublevels for seamless open-world workflows, while Data Layers are runtime-loadable actor groups within World Partition that enable precise streaming control beyond distance-based loading.

Blueprints can spawn and manipulate actors at runtime. Spawn Actor From Class takes an actor class, a location, and a rotation, and returns a reference to the new instance. Set Actor Location moves an actor in world space, while Set Actor Relative Location moves it relative to its parent. Actors can be attached with Attach To Actor or Attach To Component, optionally choosing Snap To Target or Keep World Transform, and detached later. Destroy Actor removes an actor from the world and fires EndPlay. To load a new level, the Open Level node unloads the current persistent level and loads a new one by name; the Game Instance survives this transition. For asynchronous loading, Load Stream Level and Unload Stream Level manage streaming sublevels while the game continues to run. The Game Instance persists across level loads, holding save data, player profiles, and persistent UI state, in contrast to Game Mode and Game State, which reset per level.

All chapters
  1. 1Editor Interface and Asset Management
  2. 2Blueprints and Visual Scripting
  3. 3Materials and Shading
  4. 4Lighting and Rendering
  5. 5Physics, Collision, and Movement
  6. 6Actors, Levels, and Runtime Spawning
  7. 7Animation, AI, and Multiplayer
  8. 8Packaging, Profiling, and Project Settings

Drill it

Reading is not remembering. These come from the Unreal Engine Basics deck:

Q

What Unreal Engine panel displays the list of actors currently present in the level?

The Outliner panel lists all actors currently placed in the level, organized hierarchically, and allows selection, searching, grouping, and visibility toggling...

Q

How do you open the Blueprint editor for a specific Blueprint asset?

Double-click the Blueprint asset in the Content Browser (or right-click and choose Edit), which opens the Blueprint editor containing Event Graph, Functions, Va...

Q

What is the purpose of the Construction Script in a Blueprint?

The Construction Script runs when an actor is placed or moved in the editor, and again whenever a property changes. It is commonly used for procedural setup suc...

Q

Which node executes logic only once when the game begins playing?

The Event BeginPlay node fires once on each actor when play starts, after construction and initialization, making it the standard place to set up gameplay logic...