{ }Blueprint → C++

Unreal Engine 5 · Blueprint → C++

Open Level by Name in Unreal Engine 5 C++

Open Level (by Name) is UGameplayStatics::OpenLevel(this, "MapName"), which performs a travel to load a different level by its name.

Blueprint node & C++ equivalent

Open Level (by Name) Blueprint node and its C++ equivalent in Unreal Engine 5
The “Open Level (by Name)” Blueprint node.
C++
#include "Kismet/GameplayStatics.h"

UGameplayStatics::OpenLevel(
	this,                    // World context object
	"ExampleMap"             // Level name
);

What does Open Level do?

Open Level loads a new map and tears down the current one, restarting gameplay in the destination level. It is how you move from a main menu to a gameplay level or between mission maps.

The level is identified by name, which can be the short package name or a full path.

The C++ equivalent

Include Kismet/GameplayStatics.h and call UGameplayStatics::OpenLevel(this, "ExampleMap"). The first argument is the world context object and the second is the level name passed as an FName.

OpenLevel supports optional arguments for absolute travel and a URL options string, useful for passing parameters like game mode overrides to the new level.

Frequently asked questions

How do I load a level by name in UE5 C++?+

Call UGameplayStatics::OpenLevel(this, "YourMapName") from Kismet/GameplayStatics.h. It travels to and loads the named map at runtime.

Can I pass options when opening a level in C++?+

Yes. OpenLevel accepts an optional URL options string after the level name, letting you pass key-value parameters such as game mode or listen-server flags.

Related Utilities nodes

View all Utilities nodes →