//+ BEHAVIOUR
        private void Start()
        {
            StartCoroutine(TimedUpdate());

            AmbianceDirector.onAwakeDelegate += dir => OnAmbienceAwake?.Handle(args: new object[] { dir }, unique: true);

            SceneContext.onNextSceneAwake  += cxt => OnNextSceneAwake?.Handle(args: new object[] { cxt }, unique: true);
            SceneContext.onSceneLoaded     += cxt => OnSceneLoaded?.Handle(args: new object[] { cxt }, unique: true);
            SceneContext.beforeSceneLoaded += cxt => BeforeSceneLoaded?.Handle(args: new object[] { cxt }, unique: true);
        }