Antes de começar
O que você vai fazer
Vai construir as plataformas de salto, criar itens colecionáveis com animação giratória usando Prefabs, e programar o script em C# para o personagem coletar os itens no cenário.
Sobre o projeto
A gente continua no Projeto1, com a Cena1 aberta após as alterações da Aula 2. Se você ainda não fez a Aula 2, comece por ela.
O que você precisa
O Unity 5.6.7f1 e o projeto da Aula 2 pronto: com o chão, barreira texturizados e a lava criada.
Como usar esta página
Leia a legenda de cada passo. Quer ver a tela? Clique em Ver como fica.
Passo a passo
Parte 1
Construindo as plataformas de salto
Passos 1 a 34-
Passo 1 de 84
Selecionar a Barreira
Na Hierarchy, clique uma vez na Barreira e aperte Ctrl+D no teclado para duplicá-la.
Ver como ficaEsconder

-
Passo 2 de 84
Barreira duplicada
Apareceu uma cópia no fim da lista, já selecionada, com o nome Barreira (1).
Ver como ficaEsconder

-
Passo 3 de 84
Nome Plataforma1
Com a cópia selecionada, aperte F2, digite Plataforma1 e aperte Enter.
Ver como ficaEsconder

-
Passo 4 de 84
Criar um grupo no Cenário
Para organizar as plataformas, vamos criar um grupo para elas. Clique com o botão direito em cima de Cenário e escolha Create Empty.
Ver como ficaEsconder

-
Passo 5 de 84
GameObject criado
Surgiu um GameObject vazio dentro do Cenário, já selecionado.
Ver como ficaEsconder

-
Passo 6 de 84
Nome Plataformas
Aperte F2, digite Plataformas e aperte Enter.
Ver como ficaEsconder

-
Passo 7 de 84
Plataforma1 dentro do grupo
Arraste a Plataforma1 e solte em cima de Plataformas. Agora ela aparece dentro do grupo, um pouquinho mais para a direita.
Ver como ficaEsconder

-
Passo 8 de 84
Selecionar a Plataforma1
Clique em Plataforma1 para selecioná-la. É ela que vamos ajustar agora.
Ver como ficaEsconder

-
Passo 9 de 84
Posição e tamanho da plataforma
No Transform, preencha Position com X 0, Y 0.25 e Z 54. Em Scale, use X 4, Y 0.5 e Z 4. Atenção: a linha do meio é a Rotation, não mexa nela.
Ver como ficaEsconder

-
Passo 10 de 84
Plataforma1 na Scene
Na Scene, a plataforma apareceu pequenininha, flutuando na lava, um pouco depois do fim do chão.
Ver como ficaEsconder

-
Passo 11 de 84
Selecionar o material Pedra
A plataforma está usando o material Pedra da barreira, e a pedra fica esticada em listras finas. Para ter um material só dela, abra a pasta Materiais, clique na esfera Pedra e aperte Ctrl+D.
Ver como ficaEsconder

-
Passo 12 de 84
Pedra 1 criada
Surgiu uma cópia do material, chamada Pedra 1.
Ver como ficaEsconder

-
Passo 13 de 84
Material PedraPlataforma
Aperte F2, digite PedraPlataforma e aperte Enter. O nome fica cortado na pasta, mas está completo.
Ver como ficaEsconder

-
Passo 14 de 84
Material na plataforma
Arraste a esfera PedraPlataforma (1) e solte em cima do nome Plataforma1 (2) na Hierarchy.
Ver como ficaEsconder

-
Passo 15 de 84
Material no Inspector
Com a Plataforma1 selecionada, o Inspector mostra PedraPlataforma como o material dela.
Ver como ficaEsconder

-
Passo 16 de 84
Tiling da plataforma
Com o material PedraPlataforma selecionado no Project, use o Tiling que fica logo abaixo do Emission (não o de Secondary Maps) e coloque X 4 e Y 4. A plataforma mede 4 por 4, então assim a pedra se repete a cada 1 metro.
Ver como ficaEsconder

-
Passo 17 de 84
Plataforma de pedra
Na Scene, a plataforma agora tem a pedra repetida, sem as listras finas. A Barreira continua igual, porque ela usa o outro material.
Ver como ficaEsconder

-
Passo 18 de 84
Duplicar a Plataforma1
Agora vamos fazer a segunda plataforma. Clique em Plataforma1 e aperte Ctrl+D.
Ver como ficaEsconder

-
Passo 19 de 84
Plataforma1 (1) criada
A cópia apareceu dentro do grupo Plataformas, com o nome Plataforma1 (1). Ela já vem com a pedra e o tamanho da primeira.
Ver como ficaEsconder

-
Passo 20 de 84
Nome Plataforma2
Aperte F2, digite Plataforma2 e aperte Enter.
Ver como ficaEsconder

-
Passo 21 de 84
Position da Plataforma2
No Inspector, confira o nome Plataforma2 (1). Em Position (2), mude só o Z para 60. O X e o Y continuam como estão. Assim ela fica depois da primeira, com 2 metros de lava no meio.
Ver como ficaEsconder

-
Passo 22 de 84
Duas plataformas
Na Scene, a Plataforma2 apareceu depois da primeira, com um vão de lava entre elas.
Ver como ficaEsconder

-
Passo 23 de 84
Duplicar a Plataforma2
Hora da terceira plataforma. Clique em Plataforma2 e aperte Ctrl+D.
Ver como ficaEsconder

-
Passo 24 de 84
Plataforma2 (1) criada
A cópia apareceu com o nome Plataforma2 (1).
Ver como ficaEsconder

-
Passo 25 de 84
Nome Plataforma3
Aperte F2, digite Plataforma3 e aperte Enter.
Ver como ficaEsconder

-
Passo 26 de 84
Position da Plataforma3
No Inspector, confira o nome Plataforma3 (1) e mude o Z da Position (2) para 66. De novo, mais 2 metros de lava de vão.
Ver como ficaEsconder

-
Passo 27 de 84
Três plataformas
Na Scene, as três plataformas estão em fila sobre a lava, cada uma com um vão pequeno até a próxima.
Ver como ficaEsconder

-
Passo 28 de 84
Selecionar o personagem
Agora o personagem. Na Hierarchy, clique em ThirdPersonController.
Ver como ficaEsconder

-
Passo 29 de 84
Position do personagem
No Transform, mude só o Z da Position para 44. O X (0) e o Y (0.5) continuam. Atenção: na Aula 1 ele começava em Z 0, e essa é uma mudança desta aula. Assim ele fica perto da ponta do chão, com espaço para pegar impulso antes de pular.
Ver como ficaEsconder

-
Passo 30 de 84
Personagem perto das plataformas
Na Scene, o personagem agora está na ponta do chão, de frente para as três plataformas.
Ver como ficaEsconder

-
Passo 31 de 84
Testando as plataformas
Clique em Play e abra a aba Game. Ande até a ponta do chão e pule para a Plataforma1. Dá para alcançar, e depois seguir pelas outras duas!
Ver como ficaEsconder

-
Passo 32 de 84
Parar o teste
Para parar, clique no Play de novo. O botão deixa de ficar azul e a Scene volta ao normal.
Ver como ficaEsconder

-
Passo 33 de 84
Salvar de novo
Salve a cena de novo: menu File e Save Scenes (ou Ctrl+S). Vale salvar sempre que terminar uma parte.
Ver como ficaEsconder

-
Passo 34 de 84
Cena salva de novo
O nome Cena1 ficou sem o asterisco (*). As plataformas estão salvas!
Ver como ficaEsconder

Parte 2
Item colecionável giratório e Prefab
Passos 35 a 70-
Passo 35 de 84
Grupo para os itens
Vamos criar um grupo para os itens, igual ao das plataformas. Clique com o botão direito em cima de Cenário e escolha Create Empty.
Ver como ficaEsconder

-
Passo 36 de 84
Novo GameObject
Surgiu um GameObject vazio no fim do Cenário, já selecionado.
Ver como ficaEsconder

-
Passo 37 de 84
Nome Itens
Aperte F2, digite Itens e aperte Enter.
Ver como ficaEsconder

-
Passo 38 de 84
Criar o cubo do item
Clique com o botão direito em cima de Itens, vá em 3D Object (1) e escolha Cube (2).
Ver como ficaEsconder

-
Passo 39 de 84
Cube dentro de Itens
O Cube já nasceu dentro do grupo Itens, selecionado.
Ver como ficaEsconder

-
Passo 40 de 84
Nome Item1
Aperte F2, digite Item1 e aperte Enter.
Ver como ficaEsconder

-
Passo 41 de 84
Posição e tamanho do item
No Transform, preencha Position com X 0, Y 1 e Z 66. Em Scale, use X 0.5, Y 0.5 e Z 0.5. O Z 66 é o centro da Plataforma3, e o Y 1 deixa o cubinho flutuando um pouquinho acima dela.
Ver como ficaEsconder

-
Passo 42 de 84
Item na plataforma
Na Scene, o cubinho apareceu em cima da Plataforma3.
Ver como ficaEsconder

-
Passo 43 de 84
Imagem da madeira no Unity
Pegue o arquivo madeira.png (1), que você baixou na pasta Downloads (baixar de novo), e arraste para dentro da pasta Texturas do Project. Ela aparece lá como madeira (2).
Ver como ficaEsconder

-
Passo 44 de 84
Criar o material Madeira
Abra a pasta Materiais, clique com o botão direito num espaço vazio dela, vá em Create (1) e escolha Material (2).
Ver como ficaEsconder

-
Passo 45 de 84
Material Madeira
Digite o nome Madeira e aperte Enter. A esfera azulada ainda está sem imagem.
Ver como ficaEsconder

-
Passo 46 de 84
Achar a imagem da madeira
Com o material Madeira selecionado, abra a pasta Texturas. A imagem madeira está lá.
Ver como ficaEsconder

-
Passo 47 de 84
Imagem no Albedo da Madeira
Arraste a imagem madeira para o quadradinho que fica à esquerda de Albedo, no Inspector. A cor do lado continua branca.
Ver como ficaEsconder

-
Passo 48 de 84
Item de madeira
Na pasta Materiais, arraste a esfera Madeira e solte em cima do nome Item1 na Hierarchy. Na Scene, o cubinho ficou com cara de madeira!
Ver como ficaEsconder

-
Passo 49 de 84
Abrir a pasta Scripts
Agora vamos fazer o item girar. Dê um duplo clique na pasta Scripts para abrir.
Ver como ficaEsconder

-
Passo 50 de 84
Criar o script GirarItem
Dentro da pasta, clique com o botão direito num espaço vazio, vá em Create (1) e escolha C# Script (2).
Ver como ficaEsconder

-
Passo 51 de 84
Script GirarItem
Digite o nome GirarItem e aperte Enter. Ele aparece na pasta ao lado do MoverLava.
Ver como ficaEsconder

-
Passo 52 de 84
GirarItem no MonoDevelop
Dê um duplo clique no GirarItem. O MonoDevelop abre, mas olhe a classe (1): o nome dela é NewBehaviourScript, diferente do nome do arquivo GirarItem (2). Por isso vamos trocar tudo o que está escrito. Se aparecer o aviso amarelo de line endings, é só clicar em OK.
Ver como ficaEsconder

-
Passo 53 de 84
Colar o código do GirarItem
Aperte Ctrl+A e Delete para apagar tudo, e cole o código abaixo. Agora a classe (1) se chama GirarItem, igual ao arquivo. A bolinha na aba (2) avisa que ainda falta salvar. A cada quadro do jogo o objeto gira um pouquinho nos três eixos, e o Time.deltaTime faz ele girar na mesma velocidade em qualquer computador.
using UnityEngine; public class GirarItem : MonoBehaviour { void Update() { transform.Rotate(14 * Time.deltaTime, 20 * Time.deltaTime, 5 * Time.deltaTime); } }Ver como ficaEsconder

-
Passo 54 de 84
Salvar o script
Salve pelo menu File e Save, ou com Ctrl+S.
Ver como ficaEsconder

-
Passo 55 de 84
Script salvo
Pronto! O asterisco (*) saiu do nome GirarItem.cs na barra de título, então o script está salvo.
Ver como ficaEsconder

-
Passo 56 de 84
Script no Item1
De volta na Unity, clique no Item1 (2) na Hierarchy. Cuidado para não escolher a Plataforma3! Depois arraste o script GirarItem (1) e solte no Inspector do Item1.
Ver como ficaEsconder

-
Passo 57 de 84
Girar Item no Inspector
No Inspector do Item1 apareceu o componente Girar Item (Script).
Ver como ficaEsconder

-
Passo 58 de 84
Item girando
Clique em Play e olhe o cubinho de madeira: ele fica girando em cima da Plataforma3. Quando terminar, clique no Play de novo para parar.
Ver como ficaEsconder

-
Passo 59 de 84
Criar a pasta Prefabs
Com a pasta Assets aberta, clique com o botão direito num espaço vazio, vá em Create (1) e escolha Folder (2).
Ver como ficaEsconder

-
Passo 60 de 84
Pasta Prefabs
Digite o nome Prefabs e aperte Enter.
Ver como ficaEsconder

-
Passo 61 de 84
Criar o Prefab do item
Arraste o Item1 da Hierarchy e solte dentro da pasta Prefabs. Surgiu um arquivo Item1 (2) com o cubo de madeira, e o nome Item1 (1) na Hierarchy ficou azul. Isso quer dizer que ele agora é um Prefab, um molde que dá para copiar quantas vezes quiser.
Ver como ficaEsconder

-
Passo 62 de 84
Add Component no Item1
Com o Item1 selecionado na Hierarchy, vá no fim do Inspector e clique em Add Component.
Ver como ficaEsconder

-
Passo 63 de 84
Buscar o Rigidbody
Na busca, digite Rigidbody inteiro e escolha o primeiro da lista. Cuidado para não pegar o Rigidbody 2D.
Ver como ficaEsconder

-
Passo 64 de 84
Rigidbody adicionado
O componente Rigidbody apareceu no Inspector do Item1.
Ver como ficaEsconder

-
Passo 65 de 84
Is Kinematic
Marque a caixinha Is Kinematic. Com ela marcada, o item não cai e ninguém consegue empurrá-lo: ele fica girando no lugar.
Ver como ficaEsconder

-
Passo 66 de 84
Selecionar o Item1
Na Hierarchy, clique no Item1, dentro do grupo Itens. Confira que o nome no topo do Inspector é mesmo Item1.
Ver como ficaEsconder

-
Passo 67 de 84
Is Trigger
No Box Collider, marque a caixinha Is Trigger. Agora o personagem atravessa o cubo em vez de bater nele, e o Unity consegue avisar os scripts quando isso acontece. Faça isso com o Play desligado.
Ver como ficaEsconder

-
Passo 68 de 84
Apply no Prefab
Com o Item1 selecionado na Hierarchy e o Play desligado, clique em Apply, na linha Prefab. Assim o Rigidbody e o Is Trigger também passam para o molde. Nunca clique em Apply durante o Play, porque a rotação do item gira sozinha e ficaria guardada errada.
Ver como ficaEsconder

-
Passo 69 de 84
Abrir o Prefab
Para conferir, abra a pasta Prefabs no Project e clique no arquivo Item1.
Ver como ficaEsconder

-
Passo 70 de 84
Prefab com tudo certinho
No Inspector do Prefab, o Is Trigger (1) está marcado e o Rigidbody (2) está com Is Kinematic marcado. O molde está completo: todo item novo que você criar a partir dele já nasce assim.
Ver como ficaEsconder

Parte 3
Sistema de coleta e finalização
Passos 71 a 84-
Passo 71 de 84
Abrir a pasta Scripts de novo
Agora o personagem precisa saber pegar o item. Dê um duplo clique na pasta Scripts para abrir.
Ver como ficaEsconder

-
Passo 72 de 84
Criar o script ColetarItens
Clique com o botão direito num espaço vazio da pasta, vá em Create (1) e escolha C# Script (2).
Ver como ficaEsconder

-
Passo 73 de 84
Script ColetarItens
Digite o nome ColetarItens e aperte Enter. Agora a pasta tem três scripts.
Ver como ficaEsconder

-
Passo 74 de 84
ColetarItens no MonoDevelop
Dê um duplo clique no ColetarItens. De novo a classe (1) vem com o nome NewBehaviourScript, diferente do arquivo (2). Vamos trocar tudo.
Ver como ficaEsconder

-
Passo 75 de 84
Colar o código da coleta
Aperte Ctrl+A e Delete, e cole o código abaixo. Quando o personagem atravessa um objeto com Is Trigger, o Unity chama o OnTriggerEnter sozinho. O objeto atravessado (other) é desativado com SetActive(false) e some da cena.
using UnityEngine; public class ColetarItens : MonoBehaviour { void OnTriggerEnter(Collider other) { other.gameObject.SetActive(false); } }Ver como ficaEsconder

-
Passo 76 de 84
Salvar o ColetarItens
Salve pelo menu File e Save, ou com Ctrl+S.
Ver como ficaEsconder

-
Passo 77 de 84
ColetarItens salvo
O asterisco (*) saiu do nome ColetarItens.cs na barra de título. Script salvo!
Ver como ficaEsconder

-
Passo 78 de 84
Selecionar o personagem de novo
De volta na Unity, clique em ThirdPersonController na Hierarchy. Esse script vai no personagem, não no item.
Ver como ficaEsconder

-
Passo 79 de 84
Achar o ColetarItens
Na pasta Scripts do Project está o ColetarItens. Arraste ele e solte no Inspector do personagem.
Ver como ficaEsconder

-
Passo 80 de 84
Coletar Itens no personagem
O componente Coletar Itens (Script) apareceu no fim da lista do Inspector do personagem. Não clique em Apply aqui.
Ver como ficaEsconder

-
Passo 81 de 84
Chegando no item
Clique em Play e leve o personagem pelas três plataformas até a Plataforma3. O cubinho de madeira está lá, girando, esperando para ser pego.
Ver como ficaEsconder

-
Passo 82 de 84
Item coletado
Encoste no cubo: ele some! O personagem atravessou o Is Trigger e o ColetarItens desativou o item. Clique em Play de novo para parar.
Ver como ficaEsconder

-
Passo 83 de 84
Salvar a cena
Para fechar a aula, salve tudo: menu File e Save Scenes (ou Ctrl+S).
Ver como ficaEsconder

-
Passo 84 de 84
Aula 2 concluída
Pronto! O nome Cena1 ficou sem o asterisco (*). Você criou texturas, uma lava em movimento, plataformas e um item que o personagem coleta. Parabéns! Na próxima aula vamos trocar o personagem por um pronto, com texturas.
Ver como ficaEsconder
