Bem-vindo de volta meus colegas desenvolvedores de jogos a um dos
vídeos mais emocionantes e longos, muito longos.
Mas acredite em mim, vale muito a pena.
Neste vídeo, vamos injetar mais vida e ao nosso jogo criando animações.
Então, agora, quando começamos nosso jogo,
não ficamos parados como uma estátua.
Você pode ver que estamos nos movendo.
Então nosso jogador vai para cima e para baixo, para
cima e para baixo, para cima e para baixo.
E não só isso,
sempre que começamos a andar, olhe para isso.
Ele começa a mover os pés.
Quão legal é isso?
Sério, agora não temos apenas o jogador em pé estátua de sorte.
Ele realmente tem vida, sua respiração.
Ele está andando, ele está olhando ao redor,
ele está apontando sua arma,
ele está pronto para começar a atirar.
Ele ainda precisa de um pouco de ajustes,
mas vamos lidar com isso no próximo vídeo.
Então, o que realmente, no final, qual vídeo?
Não vamos perder mais tempo pensando e vamos animar.
Oh, tudo bem.
Então, atualmente, quando começamos nosso jogo,
se nos movimentarmos,
como você pode ver, estamos muito obsoletos.
Não temos animações em particular,
não vemos o jogador mudando de estado
quando ele começa a andar ou quando ele está de pé também.
Então, vamos mudar isso.
Vamos adicionar animações ao nosso jogador.
E já temos algumas planilhas e aqui,
aquelas que determinarão nossa animação.
Então você pode ver a marcha lenta, a caminhada.
Vamos colocá-los lado a lado e tocar esses sprites enquanto caminhamos, enquanto
ficamos parados,
enquanto fazemos o movimento do torpedo.
Então, vamos começar com animações.
Primeiro, vamos entender o que são animações.
Alguns componentes-chave que precisamos.
Primeiro de tudo, temos o controlador do animador,
que permite organizar e manter um conjunto de clipes de animações.
Temos o componente animador que adicionamos a qualquer objeto de jogo que queremos animar.
Temos as animações reais,
que são vários sprites são renderizados um após o outro.
Também veremos que temos outro tipo de animações que nos permitem mover
objetos e depois lembrá-lo e reproduzi-lo em determinados momentos.
E, finalmente, temos o renderizador sprite.
Agora, por que estou te lembrando do renderizador sprite?
Porque em um pouco,
você precisará entender qual renderizador de sprite realmente tentaria mudar para
criar as animações que temos para o nosso player DOM.
Certo, basta falar.
Vamos começar com animações.
Então, vamos para a Unity.
E a primeira coisa que precisamos fazer é que precisamos obter as janelas para a animação.
Então, vamos criar a janela de animações.
Vamos encaixá-lo por aqui.
E vamos criar uma
outra janela para o animador.
Lá vai você.
Então, o animador como onde vamos definir todas as animações.
E as animações como onde realmente criaremos as animações.
Vamos começar. Primeiro,
vamos escolher nosso jogador de condenação.
E como você pode ver imediatamente na janela de animação,
temos que começar a animar, fazer o player,
criar um animador e um clipe de animação.
Ótimo, vamos fazer isso.
Vamos clicar em Criar.
E, como você pode ver, estamos atualmente no tempo do arquivo invasor e dos ativos.
Vou criar uma nova pasta aqui,
que serão as animações.
Ou animações.
Lá vai você.
E aqui crie uma pasta chamada player.
E vamos nomear nosso clipe.
Vamos começar criando um jogador,
eu acho. Certo, ótimo.
Então agora temos nossa nova animação.
E se olharmos para o jogador de cúpula,
você pode ver que temos um novo componente ao lado do corpo rígido e da cápsula,
que é o animador.
Então, se entrarmos em cena,
nada muda senão dentro do animador,
apenas para atualizar tudo,
você pode ver que agora temos esses pequenos retângulos aqui.
E o que são esses?
Bem, temos qualquer estado,
a entrada e saída.
Não vamos nos preocupar com qualquer estado e com a saída.
Vamos nos concentrar na entrada e no jogador em marcha lenta.
O que isso significa é que assim que começamos nosso jogo, passamos
imediatamente para o jogador em marcha lenta.
E você verá que toda vez que tivermos um animador,
sempre temos uma animação padrão com a qual começamos.
E neste caso, temos o jogador ocioso começando imediatamente a partir da entrada.
E, como você pode ver, ele está conectado por essa linha com uma seta.
Isso é chamado de transição.
E mais tarde faremos nossa própria transição para ir de uma animação para a outra.
Certo, vamos continuar.
A próxima coisa que queremos fazer é realmente queremos criar a animação.
Então, para fazer isso,
precisamos obter nossos sprites em marcha lenta aqui.
Esses três, queremos adicioná-los ao jogador e começar a jogar com eles.
Mas há um pequeno detalhe aqui que precisamos levar em consideração.
Vamos mudar os sprites do jogador.
E os sprites que estamos mudando estão realmente no corpo,
não no imediato.
Fazendo objeto de jogo do jogador.
Então, através dessa animação,
será necessário adicionar uma propriedade aqui.
E deixe-me explicar esta janela aqui.
Esta é a linha do tempo para a animação.
Então você pode ver a partir de 030,
este é 2.5º e 2 um aqui.
Este é um segundo inteiro.
Você tem a peça,
o próximo quadro-chave, etc.
Você tem o botão Gravar aqui e você pode criar
um novo clipe clicando neste menu suspenso aqui.
Então, vamos adicionar uma propriedade.
Quando clicamos nele, você pode ver que temos acesso a
todos os componentes que estão presentes no jogador ou no objeto do jogo do jogador condenado,
podemos mudar as armas são Chicago,
o braço, o corpo, tudo.
Então, vou acessar o corpo.
E você pode ver que eu posso acessar a renderização sprite nele.
E se eu rolar para baixo,
posso acessar o sprite que está no corpo aqui.
Então, vou clicar no pequeno sinal de mais aqui.
Se eu fizer isso um pouco maior,
você pode ver que eu posso realmente ver
esse pequeno sprite e isso é o que vamos mudar.
Então, se eu clicar em Play,
você notará que nada muda porque esse sprite é exatamente o mesmo que este.
Então, vamos mudar isso.
Vou encaixar as animações e aqui só para ter um pouco de espaço,
vou excluir a última,
Mantenha isso aqui.
Vou selecionar esses três e adicioná-los à linha do tempo aqui,
e posso me livrar do primeiro.
Então agora deixe-me fazer isso, ok, mas à parte.
Vou encaixar a animação aqui.
E agora, se eu tentei reproduzir a animação, lá vai você.
Você pode ver que nosso jogador começa a se mover.
Quão legal é isso?
O que está acontecendo aqui?
Se você olhar de perto,
deixe-me apenas pausar isso por um segundo.
Vou fazer o tempo entre cada um um um pouco longe.
Então, agora, quando jogarmos,
você notará que estamos indo de um sprite para o outro.
E você pode ter certeza disso olhando aqui no
inspetor do corpo e ver que estamos indo de qualquer um, seja
para ocioso, quer dois ociosos.
E este aqui,
que são os três,
mal está sendo jogado porque assim que chegamos ao fim,
começamos imediatamente desde o início.
Então um bom, digamos que o principal para criar animações é que o tempo todo,
o primeiro quadro deve ser copiado pressionando Control C e B,
o último quadro também.
Então, agora você notará como a animação parece muito melhor.
Então, vou reproduzir a animação novamente.
Lá vai você.
Você pode ver que agora estamos em marcha lenta.
Podemos ver 1, 2, 3, 1,
2, 3 jogando um após o outro.
Então agora temos a animação do jogador em marcha lenta.
E se tivermos nosso ganho,
você pode ver que assim que começarmos,
o jogador inicia qualquer um dos links.
E mesmo enquanto estamos nos movendo,
ainda estamos em marcha lenta.
Mesmo se olharmos para o outro lado,
ainda estamos em marcha lenta.
E se verificarmos o animador,
você pode ver que o tempo todo estamos em marcha lenta.
Vou bloqueá-lo aqui para que possamos vê-lo claramente e diminuir um pouco.
Então este é o jogador ocioso o tempo todo enquanto estamos de pé, ainda.
Ótimo.
Agora, o próximo passo é seguir em frente e criar a animação de caminhada.
E será seu desafio.
Seu desafio é criar outra animação.
Então, pegue os sprites ambulantes do sprite principal.
Se você ainda não tiver cortado isso,
escolha o jogador da condenação na hierarquia e crie um novo clipe como eu mostrei a você.
Adicione todos os sprites ambulantes e separe-os.
Brinque e faça a caminhada parecer boa.
E se você estiver interessado em um desafio extra,
você pode ir em frente e criar a animação de torpedo.
Não tenho certeza se vou continuar usando a animação de torpedo.
Talvez devesse ser algo diferente, talvez v,
rolando em torno de animação.
Não sei com esse não,
pause o vídeo agora mesmo,
vá experimentar a animação.
Não se preocupe, mesmo que você seja um iniciante,
apenas experimente.
Veja alguns passos.
Como eu criei a marcha lenta.
Experimente você mesmo, divirta-se, aproveite.
E é isso.
Pause o vídeo agora mesmo e faça isso em cada desafio.
Ok, então agora vamos criar a segunda animação,
que é a caminhada.
Então, vou clicar aqui.
Vou criar um novo clipe.
Vá para o jogador de animações, escolha ocioso e,
em vez de ficar ocioso,
vou defini-lo como a caminhada.
Então agora o jogador está andando.
Muito bom.
Ok, então agora vamos adicionar uma propriedade aqui.
Vamos acessar o corpo porque lembre-se
os sprites que estamos mudando estão no corpo.
Renderizador Sprite, o sprite porque estamos realmente mudando cada sprite.
E vamos adicionar,
vamos mover a animação aqui.
Talvez este não seja o melhor lugar para adicionar uma animação,
mas só teremos a ver com o que temos por enquanto.
Vá para o projeto,
que é a nossa caminhada.
Então eu acho que esses últimos quatro são a saída.
Basta adicioná-los aqui.
Vou remover o último e o primeiro.
Isso começou a animação de volta para baixo.
Vamos escolher todos esses e vou espalhá-los
com um intervalo de 10. Vamos fazer 10.
Então 10, 10, 10.
E vou copiar o primeiro e defini-lo como o último.
E agora, quando tentamos reproduzir a animação,
lá vamos nós, você pode ver a caminhada do jogador.
E correto.
Agora, como vamos fazer a transição?
E se você realmente clicar no animador,
verá que agora temos um novo clipe aqui, que é o jogador andando.
Mas como vamos fazer a transição do aumento da conversa?
Esta é a pergunta de US $1 milhão.
Antes de lhe dizer como fazemos isso,
deixe-me mostrar o que criamos nesta pasta Animações dentro do player.
Então, temos o jogador da condenação,
ele tem um animador,
ele tem um controlador.
E se eu clicar no controle, a propósito,
sempre que você clicar, por exemplo, no não jogador,
você pode ver o corpo rígido onde ele está ou as armas ligadas,
pode obter uma referência.
Clicamos no controlador.
Este é o controlador e estas são
as animações do jogador e da caminhada, a marcha lenta.
E você pode ver aqui, podemos fazer uma pequena modificação para o deslocamento do ciclo, o tempo de loop,
os pólos de loop.
Mas, por enquanto, não vamos nos aprofundar nisso.
Por enquanto, vamos nos concentrar no animador e em como vamos criar transições.
Como vamos decidir quando fizermos a transição?
Isso também é muito importante.
Então, vamos criar uma transição aqui clicando com o botão direito do mouse no jogador em marcha lenta.
Aqui temos a transição make e vamos colocá-la no jogador andando.
Então deixe-me ampliar um pouco.
Então agora você pode ver que temos essa flecha indo do jogador em marcha lenta para jogar ou andar.
E também podemos criar uma transição do jogador caminhando para o jogador em marcha lenta.
Então, agora podemos ir e voltar entre essas duas animações.
Vamos clicar em uma dessas setas e ver o que temos aqui.
Então, temos algo chamado hora de saída.
Se você passar o mouse sobre ele,
poderá ver que essa transição tem um tempo de saída fixo.
O que significa o tempo de saída?
Isso significa que se eu for da marcha lenta para a caminhada depois de uma certa quantia,
eu quero ir automaticamente da caminhada para a marcha lenta?
E nosso caso, não queremos fazer isso.
Queremos fazer a transição de volta sempre que realmente pararmos de andar.
Então, vou desligar o Tempo de Saída Tem.
Vou fazer o mesmo no caminho para baixo.
Então, vamos procurar a duração da transição.
E você pode ver, na verdade, uma pré-visualização,
uma pequena janela de visualização aqui.
Então, quando jogo,
estou em marcha lenta e depois começo a andar.
Temos a duração da transição.
Então, como você quer terminar a animação
de marcha lenta antes de fazermos a transição para andar e nosso caso,
acho que não precisamos disso.
Então, vou definir a duração da transição para 0
e também para isso na transição da caminhada.
Então, em ambas as transições,
ambas as setas indo e para a caminhada,
vamos remover o tempo de saída,
remover a transição mais tarde quando precisarmos delas.
Vou me certificar de falar sobre isso. Não se preocupe.
Agora, se rolarmos para baixo,
podemos ver aqui que temos algo chamado as condições.
E esta é sob qual condição fazemos
transição do jogador em marcha lenta para o jogador andando?
E sob qual condição fazemos a transição
do jogador caminhando para o jogador qualquer link?
Então, vamos ter que adicionar uma condição.
Como adicionamos uma condição aqui nas transições?
Se olharmos novamente para o animador,
podemos ver que temos a etapa da camada e temos algo chamado de parâmetros.
E aqui podemos adicionar certos parâmetros que podemos acessar a
partir do nosso código e fazer as condições.
Então, vou clicar e tentar adicionar um dos parâmetros.
Você pode ver que temos float,
inteiro, booleano e um gatilho.
Agora, float e integer se explicam.
Um booleano, como você sabe,
é verdadeiro ou falso e um gatilho é exatamente como o que a palavra significa, um gatilho.
Por enquanto, vamos nos concentrar no booleano.
Então, quando clico no booleano,
você tem a opção de chamá-lo do que quiser.
Então este será o booleano que as transições de qualquer link para andar,
eu vou chamá-lo, é.
Andando, pressione Enter.
E agora você pode ver que eu posso ativá-lo,
que significa que se torna verdade,
ou eu posso desligá-lo,
o que significa que se torna falso.
Então, vou clicar na transição, indo do
link de ID do jogador para andar.
E vou clicar na condição.
E como você pode ver, porque temos apenas um parâmetro,
ele imediatamente pensa que precisamos da caminhada ou determina o que é verdade.
Então, quando andar é verdade,
fazemos a transição do jogador em marcha lenta também andando.
E se estamos caminhando,
queremos fazer a transição para a marcha lenta.
Queremos ter uma condição em que andar é falsa.
Então, agora, quando andar é verdade,
passamos do jogador Ivan para jogar ou caminhar.
Quando o jogador está andando e anda se torna falso.
Estamos de volta à marcha lenta.
Vamos converter isso em código e adicionar comportamento a ele.
Vou abrir meu roteiro.
E aqui a primeira coisa que precisamos fazer é obter uma referência do animador do jogador.
Então, vou criar um animador particular, o animador do jogador.
E ele pode porta.
Agora é privado.
Como vamos adicionar?
Não podemos acessá-lo do inspetor aqui.
Se eu clicar no dome player no script,
não teremos acesso a ele.
Bem, podemos usar algo chamado componente get.
Então, aqui vou escrever o animador do jogador será igual para obter componente.
E vamos adicionar o tipo de componente que queremos obter.
Então, o que está acontecendo aqui?
Deixe-me passar o mouse sobre o componente da dívida.
Ele não tem uma explicação.
Vou lhe dizer qual é a explicação como você também pode ir em frente
e encontrar na documentação do Unity, é muito fácil.
O que ele faz é assim que começamos,
obtemos o componente,
que é do tipo animador anexado ao
objeto do jogo que tem o controlador do jogador como um script.
Então, efetivamente, o que estamos fazendo é que esse script está usando o componente VI get aqui.
E pegar o animador,
que é este.
E agora temos uma referência a ele.
Então agora podemos acessar muitas coisas usando este animador.
E você também pode passar por documentações de unidade
e ver todos os diferentes tipos de métodos,
propriedades e várias coisas que podemos fazer com este animador.
Então, o que vamos fazer neste animador?
Queremos verificar se há uma condição.
Queremos verificar se estamos andando.
Queremos definir o Walking como true e depois fazer a transição para a animação de caminhada.
Então, vou criar uma condição if aqui e verificar se
a entrada de movimento é diferente do vetor de 0.
Então, o vetor para o 0 é como o vetor 3 aqui.
Ponto um, que significa 111 vetor dois pontos 0 significa 00.
Isso significa que se a entrada de movimento não for 0,
isso significa que temos andando aqui.
Temos velocidade, temos movimento.
Vamos pegar o animador do jogador.
Vamos usar algo chamado de conjunto booleano.
E aqui você pode ver que é preciso um ID
ou uma maneira diferente de usar a cabine de configuração.
Se eu clicar aqui,
você pode ver que posso usar um nome de string.
E é isso que vou fazer.
E você pode ver que temos uma referência de string.
E o que dissemos sobre referências de encolhimento?
Sempre que temos um, sempre vamos,
copiamos porque se houver algum erro,
o IDE não nos dirá qual é o problema, qual é o erro.
O IDE, quero dizer a unidade ou o Visual Studio.
E aqui porque estamos andando.
Ah, e eu esqueci.
O que esse ponto de exclamação significa?
O que significa o ponto de exclamação igual a?
Então, se você ver aqui,
dissemos que quando as posições do mouse de x são menores que este ponto verde,
poderíamos ter dito que se a posição do mouse que AX for igual,
sempre que quisermos comparar dois valores,
podemos definir eles como iguais, iguais.
Isso significa que é a maior posição x igual ao ponto do mouse x.
Mas aqui decidimos mantê-lo como menor ou igual.
Mas e se quisermos dizer,
se não for igual?
Bem, então usamos o ponto de exclamação igual.
Isso significa que sempre que a entrada de movimento é diferente do vetor dois pontos 0,
temos o andando está definido como true.
Else.
Isso significa que quando a entrada de movimento for igual a 0,
vamos duplicar essa linha.
E se mantivermos Alt pressionado e usarmos as teclas de seta,
podemos colocá-lo aqui.
E vamos definir o está andando para falso. Vamos salvar isso.
Vamos rever isso mais uma vez porque esqueci de falar
sobre isso e continuei usando, o que é muito ruim.
Então, espero que isso não tenha sido muito confuso.
De qualquer forma, criamos uma condição if que aprendemos em um vídeo anterior.
Verificamos se a velocidade de movimento é diferente de um vetor 0,
digamos diferente de usar um ponto de exclamação e igual.
Então, se a velocidade de movimento for diferente de 0,
isso significa que estamos caminhando.
Vamos acessar o animador do jogador que usará o método Bool set.
E vamos acessar o parâmetro is walking e configurá-lo como verdadeiro.
E lembre-se, quando definimos isso como verdadeiro,
temos a transição aqui que diz que se B está andando é verdade,
vamos de andar ocioso demais,
e fizemos o mesmo usando outro.
Caso contrário, quando a entrada de movimento é igual ao vetor 2,
2, 0, isso significa que paramos de andar está funcionando como falso.
Nós vamos do jogador andando para jogar ou ficar em marcha lenta.
Vamos ver se isso funciona.
Então, começamos o jogo.
Podemos ver aqui que temos o jogador em marcha lenta.
Se começarmos a andar, lá vai você.
Você pode ver que agora estamos andando e é evidente, a propósito,
as pernas do nosso jogador estão se movendo.
Quão legal é isso?
Então agora temos animações.
Temos transições de uma animação para a outra.
Criamos duas animações.
Talvez você tenha criado o terceiro em si mesmo.
Eu não vou fazer isso agora,
embora mais tarde para o futuro Michel lidar com esse problema,
eu me sinto preguiçoso agora.
Mas há mais uma coisa que precisamos cuidar se
formos aqui e para o jogador da cúpula.
E vamos para Animações.
Se escolhermos a marcha lenta,
por exemplo, e jogarmos,
você notará que temos nossa arma e
nosso braço parado ali sem fazer nada.
Isso não é nada bom.
Faz o jogo parecer muito, muito ruim.
Então, e também quando se trata de andar, para
você possa ver aqui que o braço está se movendo, o jogador está se
movendo,
mas o braço e o desaparecido são muito rígidos.
No próximo vídeo,
vamos consertar isso.
Então, antes de eu ir,
certifique-se de encenar tudo,
certifique-se de confirmar adicionadas e animações para
a marcha lenta e andando no seu caso também
a animação de torpedo para o jogador, confirme as alterações.
E te vejo no próximo vídeo.