Bem-vindo de volta, meus colegas desenvolvedores de jogos.
Neste vídeo, aprendemos tudo sobre classificação de camadas.
Também aprendemos sobre o relacionamento entre pais e filhos,
não como na relação pai-filho regular,
como na relação pai-filho do objeto do jogo.
Como você pode ver agora,
a espingarda é renderizada na frente do braço ou atrás do braço,
mas todas elas são renderizadas na frente do jogador,
que é renderizada na frente do fundo.
E ele também tem uma pequena sombra.
Então, não vamos perder mais tempo e vamos começar.
Oh, caso.
Então, vamos começar.
A primeira coisa que queremos fazer é criar um objeto de jogo de jogador.
Então, não queremos ter este nenhum por enquanto, vamos mudá-lo.
Não queremos ter o sprite como objeto principal.
Queremos usar um objeto de jogo de jogador que tenha um corpo que
, por sua vez, é a renderização do sprite.
Então vou mudar isso de ocioso para o corpo.
E vou clicar com o botão direito do mouse aqui,
criar um novo objeto de jogo.
E vou redefinir sua posição porque atualmente você pode ver que criamos
esse objeto de jogo e sua posição é baseada em Onde estamos olhando na cena.
Então você pode ver que tem certos atos,
certa forma, um certo Z.
O que podemos fazer é clicar no X,
colocá-lo em 0, podemos clicar no Y,
mas se os zeros em 200,
mas isso é um pouco complicado em funciona.
Mas há uma maneira muito mais suave e profissional.
A propósito, cliquei em controles que três vezes para reverter todos esses,
podemos clicar nos três pequenos botões aqui,
ou três pequenos pontos.
Podemos rolar para baixo e podemos ver que podemos redefinir
a posição ou podemos redefinir todo o transporte.
Então, por exemplo, digamos que eu estabeleça uma rotação de 134.
Eu clico aqui, posso redefinir a posição ou redefinir a rotação,
ou posso redefinir todo o objeto do jogo.
Então, essas são apenas pequenas pistas.
Você pode até ver que o nome do objeto do jogo foi redefinido.
Então, não foi semana ou semana,
nem sequer nomeamos.
Eu acho.
De qualquer forma, vamos chamar isso de camada de desgraça,
que também é Ginny.
E vamos mover o corpo e colocá-lo lá, o doom player.
Ok, então o que aconteceu ali?
Deixe-me refazer isso.
Vejamos o corpo.
Qual é a posição dele?
É menos 5,60,89.
Quando o colocamos sob o jogador da cúpula,
estamos fazendo dele uma criança.
Então agora você pode ver que se movemos V,
não jogamos ou para a esquerda e para a direita,
observe que não estamos movendo o corpo.
Estamos movendo o objeto do jogo do jogador do doom.
Você pode ver que o corpo,
que é esse aqui, está se movendo também.
E você pode ver que podemos mudar sua posição.
E o mais legal é,
vamos olhar para o corpo novamente,
recentemente a posição do corpo.
Então o corpo é,
digamos adicionar 0, 0, ok?
Se movermos o jogador DOM,
qual será a posição do corpo enquanto ainda for 00?
Então agora a posição, rotação e escala e
tudo é relativo ao objeto principal do jogo,
que é o jogador do condenado.
Mas o objeto principal do jogo não é a palavra correta.
É o objeto do jogo pai e o corpo se torna o objeto do jogo filho.
O que uma relação pai-filho gosta?
Agora, isso não é uma sessão de terapia.
Na verdade, é o que é chamado de relacionamento pai-filho no Unity.
Então, a criança vai se mover,
girar e dimensionar com o objeto do jogo pai,
como vimos agora,
usado para criar um corpo de objetos APT que se movem juntos.
Veremos o que quero dizer com um corpo de objetos.
Quero dizer, não só o corpo do jogador.
Vamos adicionar um braço,
adicionaremos uma arma,
adicionaremos uma sombra.
E todos eles se moverão ou precisarão se mover com o jogador enquanto jogamos nosso jogo.
As crianças também podem ser pais de outros objetos.
Você notará mais tarde que podemos ter um filho de uma criança.
Então, a criança se torna pai,
mas ainda é uma criança em relação ao pai principal.
Então, é como um tipo de avô, se você quiser, chame-o assim.
Finalmente, as propriedades de transformação filho são relativas ao pai.
Isso significa que, como você viu quando mudamos a posição do objeto principal do jogo pai,
a posição do corpo permanece a mesma,
0, 0, 0, 0.
Então, vamos voltar para Unity.
Então agora temos o corpo.
A próxima coisa que vamos fazer é adicionar uma arma e a sombra.
Então, se entrarmos nos recursos.
O jogador aqui,
você pode ver que temos um R e temos uma sombra.
E este ONE pertence ao outro jogador do doom, não este, aquele
que estamos usando atualmente para o outro que eu forneci, você pode usar os dois.
Vou usar esse braço especificamente só para
que sempre saibamos a diferença entre os dois.
Não vai parecer tão bonito,
mas é bom para aprender.
Então, vou selecionar o braço e a sombra,
e vou arrastá-los para os ácidos aqui.
Vou colocar a sombra e você pode,
tentar fazer isso sozinho.
Então, se eu mover a sombra sob o jogador da cúpula,
você notará que apenas movendo-a como
filho do jogador de dunas agora temos a sombra em uma posição diferente.
Posso redefini-lo e posso colocá-lo aqui,
mas não está lá.
E mesmo se eu torná-lo um pouco maior,
então vou fazer isso talvez oito em vez de 100.
Lá vai você. Você pode ver que a sombra está agora na frente.
Mas por que às vezes tem que estar na frente,
às vezes na parte de trás?
O que dá, como vamos consertar isso?
Vamos discutir isso em um pouco.
Deixe-me adicionar o braço aqui.
Lá vamos nós. Agora temos o braço.
Vamos defini-lo como o filho dos jogadores da cúpula na sombra embaixo dele.
Vamos redefinir a posição do braço.
Vamos fazer com que os 32 armados se apliquem.
Então, enquanto o braço,
para que você possa ver o braço.
Lá vai você.
Está por trás do jogador.
Isso não é nada bom.
Como vamos consertar isso?
Vamos corrigir isso usando algo chamado camadas de classificação.
Então, atualmente, podemos ver que o corpo tem um renderizador sprite,
o braço tem um renderizador sprite
e a sombra também tem um renderizador sprite.
E você pode ver aqui mesmo na renderização do sprite
há algo chamado configurações adicionais,
que tem algo chamado camada de classificação e a ordem em camadas.
Agora, o que tudo isso faz?
Você pode ver que tudo atualmente o plano de fundo está no padrão.
O corpo, o R e a sombra estão todos no padrão,
e todos são ordenados em 0.
É assim que a unidade determina qual sprite deve estar na frente de qual outro sprite,
especialmente quando se trata de jogos 2D.
Então, atualmente, você pode ver que a sombra está em 0 e está atrás do jogador.
Mas olhe atentamente aqui.
Ou vamos fazer o braço.
Se eu receber o R, ele ainda está no padrão, assim como o corpo.
Mas se eu colocá-lo em um, lá vamos nós.
Agora está na frente do nosso jogador.
Se eu colocá-lo, vamos movê-lo para o lado.
Se eu colocá-lo em minus1,
você pode ver que ele desaparece atrás do fundo.
Então deixe-me colocá-lo de volta para um e deixe-me colocá-lo no avião.
Agora, isso é ótimo,
tudo está funcionando bem.
Posso definir o plano de fundo como minus1 e garantir que toda vez que adiciono algo,
ele está na frente ou no banco e no banco.
Mas há um problema.
O que acontece quando tenho 100 objetos ou 200 objetos de 5000 objetos?
Eu tenho que definir todos eles?
Menos 1 mais 1, 2,
3, 4 menos 100.
Obviamente, não.
O que precisamos fazer é criar uma camada de classificação.
E se eu clicar aqui no plano de fundo,
e se eu clicar no padrão,
você poderá ver que posso adicionar uma camada de classificação ao nosso ganho.
Então, vamos clicar em Adicionar camada de classificação.
Abrimos a camada.
Como você pode ver, temos tags,
temos camadas de classificação e temos camadas.
Vamos nos aprofundar neles em apenas um pouco.
Vamos nos concentrar na camada de classificação.
Podemos acertar a pequena vantagem aqui.
E podemos criar uma nova camada que chamará o plano de fundo.
Então, agora você pode ver que o plano de fundo é renderizado na frente ou atrás do padrão.
Então, se eu voltar ao fundo,
isso fará sentido em apenas um pouco.
Vou definir a camada de classificação como plano de fundo.
E lá vai você.
Você pode ver que ele desaparece.
Porque deixe-me voltar.
Do jeito que voltamos, vamos para Layers, as
camadas que você pode ver aqui.
Então camadas, camadas adicionadas.
Você receberá esse inspetor.
Se eu mover o plano de fundo para trás do padrão,
você pode ver agora que o,
tudo o que estava na camada padrão, então a sombra,
o braço e o corpo agora são renderizados na frente dele.
Então, de volta à camada.
Nessa camada, você pode ver que é assim que a hierarquia funciona.
E isso é muito importante aqui.
Mas, como você pode ver, torna a vida muito mais fácil.
Agora você tem um desafio e seu desafio
será criar uma camada de classificação de camadas.
Então, vamos criar uma nova camada de classificação chamada player.
Atribua todos os elementos do jogador a essa camada.
Certifique-se de que o jogador seja renderizado na frente do
plano de fundo como vimos alterando a hierarquia na camada de classificação.
E, finalmente, como um desafio extra,
se você estiver se sentindo bem,
vá para os Recursos,
adicione uma arma deles, coloque-a
no jogador
e certifique-se de que ela seja renderizada entre o jogador e o braço.
Queremos que o braço esteja na frente da arma,
mas queremos que a arma também esteja na frente do jogador,
mas atrás da arma.
Então você precisará brincar com isso.
Se você precisar criar uma camada extra, vá em frente.
Você pode criar quantas camadas de classificação quiser,
mas certifique-se de que as verdadeiras mantenham as coisas para que você não
precise criar uma camada especial para o braço e a sombra.
É o tempo todo no jogador.
Portanto, não se preocupe com isso.
Com isso dito, pause o vídeo agora mesmo e vá fazer o desafio.
Certo, bem-vindo de volta.
Então, como você conseguiu quase isso?
Espero que você tenha tentado o seu melhor para fazer o desafio.
Sempre faça o seu melhor com um desafio, mesmo que seja difícil,
mesmo que você não tenha certeza de como fazê-lo,
você sempre pode voltar e desfazer o que fez.
Você aprende com os erros que cometeu.
De qualquer forma, camada do jogador, vou selecionar o corpo,
segurar Control, selecionar o braço e a sombra.
E eu posso mudar todos esses.
E para a camada do jogador,
vou mover a sombra para estar logo abaixo do jogador aqui.
Vamos ver.
Lá vamos nós.
Posso fazer a camada de ordem.
Vamos mantê-lo em 0.
O corpo estará em um e o braço estará em dois.
Então, o braço sempre será renderizado e na frente do corpo do jogador.
Vamos salvar a cena e vamos entrar em nossos recursos e pegar nossas armas.
Então você pode ver aqui em nossos recursos nós temos as armas que estão indo aqui.
Vamos para o PNG.
Vou selecionar a espingarda,
vou arrastá-la para os ativos aqui.
Vou para que fim?
O jogador da cúpula.
Vou mudar isso através da arma de tiro.
É extremamente pequeno.
Vou me certificar de que esta é uma rampa terceira,
para talvez aplicar as alterações.
Enquanto a espingarda 0 ou quem arranca grande.
Então eu vou mudar isso para talvez a arma que crie uma camada de classificação para a arma.
Então, todas as armas, armas.
E isso vai ser definido como as armas. Certo.
É um pouco maior do que eu gostaria.
Ou sabemos porque estamos usando apenas as armas do jogador que não vamos criar.
Então lá vamos nós.
Nós removeremos isso.
Manteremos a espingarda na camada do jogador.
E como o braço está nos dois,
vamos colocá-lo nos três e a espingarda estará nas duas agora.
Então lá vai você.
Mas, obviamente, vamos fazer disso um filho do jogador.
E, obviamente, precisaremos tornar a espingarda um pouco menor.
Então 32, vamos fazer 50.
Veja como isso parece.
Talvez pequeno demais.
Vamos tentar. 40. Obrigado. Quarenta serão bons.
Ainda assim tão grande.
Talvez vamos fazer de 40 a 40 para aplicar isso.
Sim, acho que essa espingarda está parecendo boa o suficiente.
Então lá vamos nós,
salve tudo isso, executamos o jogo.
E lá vamos nós.
Então agora temos o fundo, o jogador,
temos uma sombra que é um toque muito bom, a propósito,
dá ao jogo capaz de profundidade.
E temos uma espingarda que é renderizada na frente do jogador.
Agora acho que a espingarda se beneficiaria de um pouco de mudança de posição,
mas por enquanto, espero que você goste.
Vamos e nunca nos esquecemos também.
Mudanças de metal.
Então você pode ver que vamos encenar tudo isso,
mas temos algumas coisas que não gostaríamos de mudar.
Por exemplo, alguns PNGs ou as imagens que ocupam muito espaço.
Por enquanto, vamos mantê-los,
mas depois você verá que não precisamos encenar as imagens.
Podemos simplesmente removê-los.
Eles ocupam muito espaço, espaço desnecessário.
Então, estamos indo por enquanto,
vamos encenar tudo isso, confirmar as alterações.
O que fizemos?
Criamos um jogador e aprendemos a classificar camadas.
É muito importante sempre nomear seus commits para
algo que você possa se lembrar mais tarde.
Por exemplo, agora sabemos que esse foi o commit inicial e
o segundo commit criamos um jogador e aprendemos a camada de classificação.
Poderíamos ter adicionado uma arma,
mudar a camada de classificação das armas, etc, etc.
Então espero que você goste e eu o verei no próximo vídeo onde vamos
realmente adicionar um roteiro ao jogador e começar a mudar seu comportamento.
Tão emocionante, eu te vejo então.