2015-03-17 5 views
1

Есть ли стандартный способ изменения между сценами в Minko? В частности, я представляю каждую сцену как другой уровень, и когда пользователь выполняет некоторую задачу, весь уровень изменяется.Изменение сцен в Minko

Я знаю, что могу просто обновить все мои сетки и еще много чего, но это плохое; есть способ, которым я могу построить корневой узел для новой сцены, а затем переключить Canvas на использование этого корневого узла вместо этого (а также заставить ревердер, так как все объекты будут изменены)?

+0

Если вы можете загрузить одну подзапись, что удерживает вас от ее удаления и добавления другого? –

ответ

1

Ваша вторая идея в порядке. Вы можете создать отдельный корень Node со своим SceneManager, делясь Canvas. Добавьте новую сцену к этому Node. Когда вы будете готовы к переключению, измените SceneManager, который вы используете в сообщении enterFrame для визуализации. Это должно вызвать повторную визуализацию, загрузку текстур, вызов компонентов added сигналов ...

В Минько нет глобального синглтона или чего-либо, что помешало бы полностью разделить сцены. Каждый SceneManager будет ссылаться на свои собственные AssetLibrary. Таким образом, если вы переключаете сцены и удаляете ссылки на предыдущие SceneManager, активы будут освобождены из памяти.

+0

Так эффективно иерархия содержит 'Canvas', root' Node', а затем несколько уровней 'Node' + 'SceneManager', прикрепленных к тем узлам, которые я могу выборочно добавлять/удалять как дочерние корни 'Node'? –

+0

Я не уверен, что это сработает, потому что 'SceneManager' ожидается в верхней части иерархии. Я бы отредактировал ответ, чтобы уточнить. –

Смежные вопросы