Bem-vindo de volta, Meus desenvolvedores de jogos favoritos.
Neste vídeo, vamos não apenas fazer a
transição para o próximo nível,
mas também vamos fazer a transição.
Eles estão de uma forma muito mais legal.
Então, agora, quando passamos pelo portal,
não vamos imediatamente.
Esperamos dois segundos e depois vamos e podemos até
ajustar isso do gerenciador de níveis o quanto quisermos.
Então você pode ver que temos
uma figura central agora que é o gerenciador de níveis.
Vamos usar corrotinas,
gerente de cena e todas essas coisas boas.
Então, não vamos perder mais tempo e vamos começar.
Oh, ok, então agora precisamos de um gerente de nível porque,
ok, é tudo divertido e jogos
quando o portal está nos transitando.
Mas quando se trata de grandes jogos,
não queremos que esse objeto em particular esteja no
controle da maneira como nos movemos pelas cenas.
É muito melhor fazer com que o cisne determine qual nível
queremos passar e depois
ter um objeto mais central,
que é o gerenciador de níveis que lidará com
o processo de nos mover de nível para nível.
Isso mais tarde à medida que você cresce.
Por enquanto, não precisa ser assim.
Você pode simplesmente usar o portal.
O jogo funcionará para sempre.
Quando se trata de grandes jogos,
o objeto real não faz o trabalho.
Você tem mais, digamos uma
autoridade maior, uma cabeça maior,
que é o gerente de nível
que lida com isso.
Então, vou clicar com o botão direito do mouse em criar um
vazio, redefinir sua posição.
E este vai ser o gerente de níveis.
Você pode satisfazer onde quiser.
E você pode acessar os scripts aqui e para os gerentes, clicar com o botão direito
aqui e para os gerentes, clicar com o
do mouse em criar um script C-sharp.
O gerenciador de níveis.
Pressione Enter e espere que
ele compile
o gerenciador de nível de meta no script aqui.
E vamos seguir em frente e abri-lo.
Agora, a primeira coisa que queremos fazer é fazer
esse gerenciador de níveis e instância.
O que é uma instância?
A instância nos permitirá chamar
esse gerenciador de nível onde quer que estejamos e usar
o que é valioso como
público e qualquer método público disponível para nós é
criado,
torná-lo uma instância e depois chame isso,
e você entenderá como isso funciona.
Então, o que podemos fazer é antes de tudo,
vamos fazer um gerenciador de nível estático público, o que significa que essa variável estará fora do gerenciador
que significa que essa variável estará fora do
de nível de tipo e chamará essa instância.
E, em seguida, no início,
vamos definir a instância igual a esta salva.
Ok, então o que está acontecendo agora?
Primeiro de tudo, público,
sabemos o que público é estático.
O que é estático?
Estático significa que, através de todo o código,
teremos isso o coletor.
Então, se chamamos isso do controlador do jogador,
do impacto da bala,
do gerente da sala.
A instância do gerenciador de níveis é sempre
a mesma quando instanciamos o livro,
por exemplo, cada marcador é um clone.
Você se lembra? Então, se eu executar o jogo,
deixe-me mostrar o que quero dizer.
Então eu atiro algumas balas, pauso o jogo.
Você pode ver que cada um deles é um clone.
Então, se eu tentar acessar o controlador de bala do player,
por exemplo, se não for estático,
alguma variável que ele acessará,
será diferente,
por exemplo, de uma variável que está aqui ou aqui.
Mas se eu criar uma variável estática na bala do jogador,
então qualquer bala que eu acesse,
a variável estática,
será a mesma.
Portanto, estático significa que é o mesmo em todo o ganho,
onde e quando você acessá-lo.
Isso é muito importante quando se trata de uma estática.
Portanto, é do gerenciador de nível de tipo que é
muito fácil de entender e seu nome é instância.
Podemos chamá-lo do que quisermos.
Podemos chamá-lo de Michael se você quiser,
o que o manterá como instância.
E então temos esse trocadilho ironicamente pretendido e o quê?
Temos instância igual a isso.
Isso significa a classe real.
Então, estamos usando
a instância assim que começamos o jogo.
Instância é essa.
Então, agora, onde quer que estejamos no código,
podemos ir em frente e escrever instância de ponto do gerenciador de níveis
e acessar qualquer variável que seja pública obviamente,
ou método que temos aqui.
Então, a próxima coisa que vamos fazer
é remover a atualização por enquanto.
Use-o irá criá-lo novamente.
E precisamos criar algo
chamado campo serializado.
Flutuador. E será a hora de carregar.
Então, e será igual a 2 f.
Por que criamos um carregamento de fonte?
Qual é realmente o nosso objetivo?
Fora de tudo isso, esqueci de te dizer.
O que queremos fazer é atrasar a
transição para o próximo nível,
então não queremos que isso aconteça instantaneamente.
Queremos ter pelo menos dois segundos,
então chegamos ao portal,
esperamos dois segundos e
depois viajamos para o próximo nível.
Isso apenas adicionará um pouco de nós autenticidade como você sabe,
sempre que você estiver jogando um jogo, você não faz.
E para relatar e, em seguida, iniciar imediatamente o próximo nível.
Você quer ter um pouco de tempo,
dois segundos talvez repensem sua decisão,
mas acabará.
E como vamos fazer isso?
Obviamente, vamos usar um revestimento.
Então eu não vou te dizer para criar a
quarentena agora porque você precisa fazer com isso,
acho que tenho um desafio
em algum lugar onde você cria a corrotina.
Portanto, preste atenção muito de perto.
Sei que os adolescentes chamados são
muito difíceis de aprender no começo.
Depois de pegar o jeito, é extremamente fácil.
Vamos começar. Primeiro de tudo,
porque acessaremos
essa co-rotina a partir de um script diferente.
Vou escrever enumerador visual público.
Portanto, a corrotina é do tipo I e do numerador.
E vamos chamá-lo de carregamento próximo, próximo nível.
E aqui vamos aceitar uma discussão.
Então, vai ser do tipo string e será o
próximo nível, assim.
E aqui o que faremos é esperar
o tempo para carregar e depois carregar a cena.
Então, como dissemos, produza,
retorne, novo, espere quatro segundos.
E isso espere quatro segundos,
vamos usar o tempo para carregar.
Quão ótimo é isso?
E finalmente, depois de esperarmos 42 segundos,
vamos entrar no gerente de cena.
Adicionamos o gerenciamento de cenas
aqui e agora podemos acessar o gerenciador de cenas.
Então você notou o que aconteceu agora?
Não me permitiu usar o gerenciador de cena até que eu
tivesse os critérios dizendo à unidade que estamos usando isso.
Então Scene Manager, não Unity, desculpe-me
o script aqui,
todo esse arquivo que estamos usando, gerenciamento visto.
Então Scene Manager, carga de pontos vista.
E como a próxima cena que vamos para 0 ou quero dizer,
no próximo nível que estamos indo muito baixo. Certo, ótimo.
Agora, a próxima coisa que precisamos fazer
é entrar na saída de nível.
E em vez de usar o Scene Manager aqui,
simplesmente usamos a instância para iniciar a co-rotina.
E honestamente, já estou muito cansado,
então acho que é melhor para você fazer isso em vez de mim.
Então vá em frente, inicie a co-rotina.
Primeiro de tudo, a partir do nível de script de saída,
Kali, chame o gerenciador de níveis e vá para o próximo nível.
Há um pequeno mais complicado que você precisará tomar cuidado.
Vou te dar uma pequena dica,
que é que você não pode simplesmente chamar uma co-rotina.
Você precisa começar uma qualidade.
Então, pause o vídeo agora mesmo e comece a co-rotina.
Oh, ok, bem-vindo de volta.
Então, como você se deu bem com isso?
E aqui vou remover isso.
E, em vez disso, vou dizer que vou
começar uma co-rotina.
Vou usar o gerenciador de níveis.
Espero que esta não tenha sido a parte mais difícil se você
conseguiu usar a instância,
eu o parabenizo, você passa
para o próximo nível de desenvolvimento de jogos.
Se não, não se preocupe com isso,
provavelmente é meu erro
porque eu não te disse que não lhe dei a dica.
Mas vamos carregar o próximo nível.
Portanto, esse método no carregamento
próximo nível é, na verdade, um enumerador ocular do
gerenciador de níveis e
requer uma sequência de nível seguinte aqui,
como você pode ver como um argumento.
Então, vou dar a ele.
E o que deveria ser?
Deve ser o lote de nível dois.
Salve isso. E uma coisa muito boa.
Você pode ver que quando paramos de usar o gerenciador de cena,
o mecanismo de uso do Unity
não é mais tão amplo quanto o mecanismo Unity sozinho.
Então, as coisas que não usamos estão um pouco acinzentadas.
Então eu posso realmente remover isso,
salvar um pouco de memória.
E agora a saída do nível apenas aloca
ou chama o gerenciador de níveis de cabeça central
e diz a ele para carregar o nível.
Isso será útil quando tivermos vários portais.
Você verá, confie em mim,
é muito melhor fazê-lo dessa maneira.
Então, salve isso.
Volte e para o nosso jogo aqui.
Comece o jogo, caminhou em direção ao portal.
Estou jogando no modo cena.
Então, agora, quando eu cheguei ao portal,
devemos ter dois segundos antes de votar.
E podemos vê-lo aqui mesmo na
hora do gerente de Londres para carregar dois segundos.
Então lá vamos nós. Aqui não vai nada.
112 para cima.
Lá vamos nós.
Então agora estamos no nível 1
e não fomos para lá imediatamente.
Então, espero que você goste.
Certifique-se de declarar e todas as suas alterações.
E no próximo vídeo, vamos tornar as
transições ainda mais frias.
Você pode imaginar isso ainda mais legal do que isso?
Certifique-se de deixar um comentário para as transições legais.
Vejo você então.