Conteúdo do Curso
Unity para Iniciantes
Unity para Iniciantes
Gerenciador de Som
Inicialização do Singleton no Unity:
No Unity, muitas vezes precisamos que certos gerenciadores ou controladores persistam entre cenas, como um gerenciador de som. A classe SoundManager
é projetada como um Singleton para garantir que haja apenas uma instância dela durante toda a vida útil do jogo. Veja como é usada no Unity:
Instância Única: A linha public static SoundManager
instance; declara uma variável estática instance do tipo SoundManager
. Esta variável mantém a única instância da classe SoundManager
.
Inicialização no Método Start()
:
No método Start()
, que é chamado automaticamente pelo Unity quando o GameObject
ao qual este script está anexado se torna ativo, a instância Singleton é inicializada.
Se a instância for nula, significando que nenhuma instância de SoundManager
existe ainda, a instância atual (this) é atribuída à instância, efetivamente tornando este objeto a instância singleton.
Se instance não for nula, significa que outra instância de SoundManager
já existe (o que não deveria acontecer em um padrão Singleton). Nesse caso, o GameObject
atual (esta instância) é destruído (Destroy(gameObject)
) para reforçar o padrão Singleton.
1. What is the purpose of the instance variable in the SoundManager
class?
2. What does DontDestroyOnLoad(gameObject)
do in the SoundManager
class?
Obrigado pelo seu feedback!