God Scene System:
Our coder has ripped out his god scene system from endless dream and published it in the asset store. You can buy it for 10$ in the Unity Asset Store: https://www.assetstore.unity3d.com/en/#!/content/75033
The aim of this system is to implement a scene which is persistent through the whole game. This means that every game object which is in this world is available no matter which level is active at the moment. You can place important objects like User Interfaces, Save Systems or Services in this “Scene” and they are active in all levels of your game.
The image above shows the God Scene of Endless Dream which contains the User Inteface and important objects like the save system. Without this, these objects would be either implemented as a singleton or they have to be in every scene.
Scene Management:
One of the biggest hurdles when creating games with Unity is the scene management. To solve this, people often reinvent the wheel and develop all kind of scene management systems. The “God Scene System” also simplifies scene manament by automatically adding new scenes to the build settings. We often faced the issue of levels not being loaded after compiling our game because our coder forgot to add them in the build settings. If there is something you can forget, you will forget it someday. So the aim of this system is to make scene managment as easy as possible.
Tedious Tasks Easy:
When you change the scene, you will see that the game freezes and the next scene pops up immedialy. The bad thing is that there is no scene transistion effect like fading out. Without the God Scene, we spent many hours to think about how to create a smooth scene transistion. When using a godscene, only the fade in and fade out has to be implemented and placed there.
Another painful thing to implement are loading screens. It is not possible to show a loading screen when using the normal scene changing method in Unity. To implement this, the asynchron loading method has to be used. The God Scene System uses additive loading and unloading to maintain its persistence which is asynchron. This gives developers the option to implement loading bars as the system shows the percentage during the loading process.
His product video shows what you can do with this system. Of course we will use this system for our next game:
Contact details:
If you have any questions about this asset contact our coder:
- Name: Marius Hartl
- E-Mail: mhartl.mmt-b2013@fh-salzburg.ac.at
- Phone: 06509822249