I want to rebuild the RE4 game behaviour.
In RE4, the inventory screen is a scene of its own.
In Unity, the scenes which are loaded additively inherit the skybox / lights from the first scene loaded.
That is why I start my game with an empty scene without any lights. Else, if I would load the inventory level when it's actually needed, it would inherit the lights from the currently loaded scene.
To avoid this, I have established the following game logic:
The first scene a black scene with just a single, empty gameobject. This gameobject has a script on it that loads the other scenes:
using UnityEngine;
using UnityEngine.SceneManagement;
public class StartupScript : MonoBehaviour
{
AsyncOperation _InventoryScene;
AsyncOperation _FirstLevel;
void Start()
{
//load the inventory scene so that we can quickly show it when the user presses the "Inventory" key.
_InventoryScene = SceneManager.LoadSceneAsync("InventoryScene", LoadSceneMode.Additive);
_InventoryScene.allowSceneActivation = false; //we make it so that it is not shown
//Instead, we load the first level
_FirstLevel = SceneManager.LoadSceneAsync("Level1Scene", LoadSceneMode.Additive);
_FirstLevel.allowSceneActivation = true;//start the game by showing Level 1 scene
}
}
For some reason however, Unity does not show the level. Instead, both scenes stay at "(is loading)".
What am I missing?
Thank you!
Edit: When I do not load the InventoryScene first, the Level scene loads without any problems.
Edit2: When I load the InventoryScene at last, the InventoryScene stays at "(is loading)".

