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.