Hello dear unity users, I am currently working on a personnal project. I’m an amateur and have been playing with unity and C# for 2 years and a half now, and decided i could try to go on a somehow “decent” project. I apologize for my poor english and my lack of programming vocabulary.
The project is a 2D Exploration/Shooting/Platformer, it looks like a lot as “Super Metroid” on Super NES.
(youtube is filled with Super metroid videos if you need a visual explanation)
I nailed at modding the standard 2D Character movement scripts and using 2D colliders (So i could play the game a bit when developping it becomes annoying).
The actual issue :
My problem is that there are plenty of rooms with platforms and puzzles. Those rooms are linked by doors, when you pass through a door, the game loads the next room and pauses your character for a few seconds. I want to get rid of that and just pass a door running through it and arrive to the new room just like if the entire game was made in only one room.
I knew this wouldn’t work, but i made rooms using game objects linked together in one big composite collider, and made a prefab of each room. When you arrive in a room, the game instantiates all the rooms that are linked to it, and destroys all the rooms that aren’t. Actually, right now, every time you pass by a door, the game freezes for half a second and ruins all the fun.
If i load the actual 10 sprites that are in my assets, and make my “90” gameobjects use those, i guess it will load faster than loading “90” prefabs directly, is it true?
If it is true, can i do the same about their colliders, just load one box collider, and one of each polygon colliders that i need, and copy those onto every game object?
I thought maybe i could run some kind of loop, loading like only “10” game objects per frame to build the next rooms while the player is playing, and block the door if the player tries to open it while the room isn’t built yet.
Actually, one room can link up to maybe 6 other rooms (more if it is a really big room), and advanced players could pass through two doors in less than 4 seconds. This is why, even if my game is somehow just a project for fun, i need a room generation that works well.
The real issue, i don’t have enough experience to know if what i say are good things to do or not, and i don’t know the actual vocabulary to use properly the search function. I guess open world games use something that looks like a more complexe thing than what i’m looking for, but searching for open world in the search function just spams me with memes about poeple asking for an how to do it, and searching for runtime level generation i find procedural dungeons generation but they include loading screens.
I hope I am not asking for too much in this post, and i will be very happy if you could give me a solution, tips, th vocabulary i need to search properly what i need, or maybe a link to a tutorial.(I understand oral and written english easily even i don’t speak it well).
Thank you a lot for taking the time to read me.