I'm making a metroidvania game. For what it's worth, I'm using Godot as the game engine, but I think my question applies for any engine.
If you look back at old games such as Super Metroid on SNES, the game is divided into zones linked together by gates, as shown on this picture:
When the player goes through such a gate, the screen goes black, and I assume that the new zone is loaded while the old one is deleted. You could think of it as a loading screen.
I replicated this mechanism in my game: when the player leaves a zone (by touching the side of the screen in my game), I load the new zone and delete the old one. However, I wonder if this is really necessary. After all, a modern computer is several orders of magnitude more powerful than the SNES. Wouldn't it be possible to simply have one "giant zone" that encompass the entire game?
I'm not sure at the moment how big will be my game, so it's hard to evaluate the size of this "giant zone".

