Hi, I’m a fresh Unreal Developer coming from Unity.
I opened up a new project with the default level, and whenever I hit play I noticed that the World Outliner becomes filled with new actors that weren’t there before.
In Unity, I would always start with a blank scene (level) and work my way up from there, opting for a clean slate.
My question is: Can this be done in Unreal, or do I have to use all those spawned actors in my project? Are any of them non essential?
For example - Why does hitting play spawn a GameNetworkManager if I’m not planning to do any networking
I’m not familiar with some of these particular objects, but one of the biggest differences in how Unreal and Unity are constructed, is that in Unity when you start with nothing, you start with nothing, you have an empty 3D world, that does nothing.
In Unreal, the code (basically) starts running in GameMode, and you’ll always have a GameModeBase class or some derived class from it, that defines the “rules” of the “game”. In the case of GameModeBase, when you hit Play, the engine spawns a GameModeBase, which will decide what to do for the next several steps – in this instance, when your player “connects” to the game, it spawns a PlayerController, and a DefaultPawn, and attaches the two together.
Most of the rest of these are probably spawned by one of those three classes. It’s definitely worth having a read through GameModeBase, if you want to understand everything that happens when you start a game.
The “PlayerStartPIE” object is about the only special item, and that’s created by the Editor, because you’ve clicked “Play From Here” rather than “Play”, and that’s used to provide a starting point for where the GameMode will spawn your playercontroller and/or pawn.
You don’t need any or have to use any of them.