Voltar para o Blog
Quest Log

Unity Tutorial para Iniciantes: do Download ao Primeiro Jogo

Pequeno personagem quadrado num cenário 2D simples cercado de moedas douradas dentro da janela de um editor de jogos

Unity tutorial para iniciantes: instale pelo Hub, crie um projeto Universal 2D, faça um jogo de pegar moedas com 1 script C# e gere o executável numa tarde.

Ferramenta:UnityC#

Unity Tutorial para Iniciantes: do Download ao Primeiro Jogo

Este unity tutorial leva você do zero até um jogo jogável numa tarde: instalar a Unity pelo Hub, criar um projeto Universal 2D, montar um jogo de pegar moedas com um único script C# e gerar um executável que roda no PC de um amigo. No fim, você vai ter um arquivo para mandar no WhatsApp e uma lista clara do que estudar em seguida.

Não é um curso de Unity espremido num post. A ideia é o contrário: fazer o caminho completo uma vez, do download ao executável, para que cada assunto que você estudar depois tenha um lugar no mapa. Quem pula essa volta completa costuma ficar meses estudando peças soltas sem nunca fechar um jogo.

O que você vai construir neste unity tutorial

O jogo é simples de propósito. Um quadrado (o jogador) anda pela tela com as setas ou WASD. Espalhadas pelo cenário há moedas. Encostou numa moeda, ela some e o contador no canto da tela sobe. É isso.

Parece pouco, mas esse joguinho passa por quase tudo que um jogo maior usa: cena, objetos, componentes, física 2D, colisão, input, script C#, interface com texto e build. Quando você entender por que cada peça está ali, o salto para um jogo de plataforma ou um shooter vira questão de somar sistemas, não de começar do zero.

Você vai precisar de um PC com Windows 10 ou 11 de 64 bits, macOS Ventura ou mais novo, ou Ubuntu 22.04/24.04. A documentação da Unity 6.3 recomenda no mínimo 8 GB de RAM. Conexão boa ajuda, porque o editor e os módulos somam alguns gigabytes de download.

Instalar Unity Hub e a versão LTS

A Unity é instalada por um programa chamado Unity Hub, que gerencia versões do editor, projetos e licença. O download fica em unity.com/download.

  1. Baixe e instale o Unity Hub.
  2. Abra o Hub e entre com sua conta Unity (crie uma se não tiver). No plano Personal, a licença é ativada sozinha quando você faz login.
  3. Vá em Installs e clique em Install Editor.
  4. Na aba Official releases, escolha a Unity 6.3 LTS. LTS significa suporte de longo prazo: é a versão estável, com correções até dezembro de 2027.
  5. Na tela de módulos, no Windows, deixe marcado o Visual Studio Community (é o editor de código) e não marque mais nada por enquanto. Android e Web você adiciona depois, quando precisar.

Se o seu SSD do C: é pequeno, mude a pasta de instalação antes de baixar. O passo a passo completo, com Mac, Linux e troca de pasta, está no guia de como instalar a Unity e o Unity Hub.

Criar o projeto e entender as janelas principais

No Hub, vá em Projects > New project. Escolha o template Universal 2D: é um projeto vazio já configurado com a URP (Universal Render Pipeline) e o renderizador 2D. Dê o nome PegaMoedas, escolha a pasta e clique em Create project. A primeira abertura demora alguns minutos, porque a Unity importa pacotes e monta o cache.

O editor abre com várias janelas. Para este jogo você usa seis:

  • Scene: onde você monta o cenário, arrastando e posicionando objetos.
  • Game: o que o jogador vê pela câmera. É aqui que o jogo roda quando você aperta Play.
  • Hierarchy: a lista de objetos que estão na cena aberta.
  • Project: os arquivos do projeto no disco (scripts, sprites, cenas).
  • Inspector: as propriedades do objeto selecionado. Toda configuração passa por aqui.
  • Console: mensagens e erros. Se algo não funciona, olhe aqui primeiro.

Uma regra que poupa muita dor: tudo que você muda no Inspector enquanto o jogo está rodando (Play Mode) é desfeito quando você para. Ajuste, anote o valor, pare o jogo e ajuste de novo.

Jogador, moeda e o primeiro script C#

Montando a cena

  1. Na Hierarchy, clique com o botão direito e escolha 2D Object > Sprites > Square. Renomeie para Jogador.
  2. No Inspector do Jogador, clique em Add Component e adicione Rigidbody 2D. Em Gravity Scale, coloque 0 (é um jogo visto de cima, sem gravidade puxando para baixo). Em Constraints, marque Freeze Rotation Z para o quadrado não girar ao bater nas coisas.
  3. Adicione também um Box Collider 2D.
  4. Crie a moeda: 2D Object > Sprites > Circle. Renomeie para Moeda, mude a cor no Sprite Renderer para amarelo e diminua a escala para 0.5 em X e Y.
  5. Na moeda, adicione um Circle Collider 2D e marque Is Trigger. Trigger detecta o contato sem empurrar nada fisicamente.
  6. No topo do Inspector da moeda, abra Tag > Add Tag, crie a tag Moeda, volte na moeda e selecione a tag.
  7. Duplique a moeda com Ctrl+D umas cinco vezes e espalhe pela tela.

O script

No Project, clique com o botão direito em Assets e escolha Create > Scripting > MonoBehaviour Script. Dê o nome Jogador. O nome do arquivo precisa bater com o nome da classe, senão a Unity não deixa anexar o script ao objeto.

Arquivo Jogador.cs:

using TMPro;
using UnityEngine;
using UnityEngine.InputSystem;

public class Jogador : MonoBehaviour
{
    [SerializeField] private Rigidbody2D rb;
    [SerializeField] private TMP_Text textoPontos;
    [SerializeField] private float velocidade = 5f;

    private InputAction acaoMover;
    private Vector2 direcao;
    private int pontos;

    private void Awake()
    {
        acaoMover = InputSystem.actions.FindAction("Move");
    }

    private void Start()
    {
        AtualizarTexto();
    }

    private void Update()
    {
        direcao = acaoMover.ReadValue<Vector2>();
    }

    private void FixedUpdate()
    {
        rb.linearVelocity = direcao * velocidade;
    }

    private void OnTriggerEnter2D(Collider2D outro)
    {
        if (!outro.CompareTag("Moeda"))
        {
            return;
        }

        pontos++;
        AtualizarTexto();
        Destroy(outro.gameObject);
    }

    private void AtualizarTexto()
    {
        textoPontos.text = "Moedas: " + pontos;
    }
}

O que cada parte faz:

  • InputSystem.actions.FindAction("Move") pega a ação Move do arquivo de input que vem pronto em todo projeto novo da Unity 6 (o InputSystem_Actions). Ela já responde a WASD, setas e analógico do controle, sem você configurar nada.
  • Update roda a cada frame e lê a direção. FixedUpdate roda no passo da física e aplica a velocidade no Rigidbody 2D. Ler input no Update e mexer em física no FixedUpdate é o padrão que evita movimento travado.
  • linearVelocity é o nome da propriedade de velocidade do Rigidbody 2D na Unity 6. Muito tutorial na internet usa velocity, nome de versões anteriores que hoje aparece como obsoleto.
  • OnTriggerEnter2D é chamado pela Unity quando o collider do jogador encosta num trigger. O CompareTag confere se é moeda, soma o ponto e destrói o objeto.

Arraste o script para o Jogador. No Inspector, arraste o próprio componente Rigidbody 2D para o campo Rb. O campo Texto Pontos fica vazio até o próximo passo. Se quiser entender por que a Unity usa C# e não outra linguagem, leia qual linguagem a Unity usa.

Pontuação na tela com TextMeshPro

O TextMeshPro é o sistema de texto da interface. Na Unity 6 ele vem dentro do pacote de UI, sem instalação separada.

  1. Na Hierarchy, botão direito, menu UI (Canvas) e escolha o item de texto do TextMeshPro (Text - TextMeshPro). A Unity cria um Canvas, um EventSystem e o objeto de texto.
  2. Na primeira vez, aparece uma janela pedindo para importar os recursos essenciais do TMP. Clique em Import TMP Essentials.
  3. Selecione o texto e, no Rect Transform, use o botão de âncoras para prender no canto superior esquerdo. Aumente o tamanho da fonte para uns 48.
  4. Selecione o Jogador e arraste o objeto de texto para o campo Texto Pontos.

Aperte Play. O quadrado anda, as moedas somem e o número sobe. Você tem um jogo.

Até aqui foi tranquilo porque é uma tela, um script e nenhuma decisão de arquitetura. O degrau seguinte é onde a maioria trava: juntar movimento com animação, câmera, inimigos, menu, fases e salvar progresso, sem que um sistema quebre o outro. Fazer isso sozinho, catando vídeo solto, costuma virar um projeto que nunca fecha, e é exatamente essa sequência que um curso de Unity organizado resolve.

Curso de Unity
Quer fazer seu primeiro jogo na Unity?

No curso de Unity 6 da CursoGame.Dev você vai do zero ao primeiro jogo, com um desafio prático em cada level e suporte individual no WhatsApp quando travar.

Conhecer o curso de Unity
Suporte no WhatsAppAcesso vitalícioGarantia de 7 dias

Gerar o executável e mandar para um amigo

  1. Salve a cena com Ctrl+S.
  2. Abra File > Build Profiles.
  3. Na lista de plataformas, selecione Windows (ou macOS/Linux, conforme seu sistema). Se não for o perfil ativo, clique em Switch Profile.
  4. Confira se a sua cena está na Scene List. Se não estiver, clique em Add Open Scenes.
  5. Clique em Build, crie uma pasta vazia chamada Build fora da pasta Assets e confirme.

Quando terminar, a pasta tem o .exe e outros arquivos e pastas ao lado dele, como a pasta PegaMoedas_Data e o UnityPlayer.dll. O jogo precisa de tudo isso junto. Compacte a pasta inteira em .zip e mande. Mandar só o .exe é o erro mais comum de quem exporta pela primeira vez.

Erros comuns de quem está começando na Unity

"Can't add script component": o nome do arquivo e o nome da classe estão diferentes, ou há outro erro de compilação no Console. Corrija o Console até ficar sem vermelho.

NullReferenceException em textoPontos: você esqueceu de arrastar o texto para o campo no Inspector. Todo campo [SerializeField] que aponta para outro objeto precisa ser preenchido.

NullReferenceException em acaoMover: o projeto não tem as ações de input de projeto configuradas. Isso acontece em projetos criados em versões antigas e atualizados. Vá em Edit > Project Settings > Input System Package e crie ou atribua o asset de ações.

O jogador cai para fora da tela: o Gravity Scale ficou em 1. Volte para 0.

O jogador gira ao bater numa moeda: faltou marcar Freeze Rotation Z no Rigidbody 2D.

A moeda empurra o jogador em vez de sumir: o collider da moeda está sem Is Trigger marcado.

"Velocity is obsolete": você copiou código de tutorial antigo. Troque velocity por linearVelocity.

Mudanças perdidas: foram feitas em Play Mode. Para e faz de novo fora dele.

Próximo passo: o que estudar depois do primeiro jogo

Com o PegaMoedas fechado, você tem a base para escolher o próximo degrau com intenção, em vez de pular de vídeo em vídeo:

  1. C# básico de verdade: variáveis, if, laços, métodos e classes. Sem isso, todo script vira copiar e colar.
  2. Um jogo com fim: acrescente um cronômetro e uma tela de vitória quando todas as moedas forem pegas. Fechar o ciclo começo, meio e fim ensina mais que qualquer mecânica nova.
  3. Física e colisão 2D: entenda a diferença entre collider normal e trigger, e entre Dynamic e Kinematic no Rigidbody 2D.
  4. Animação de sprite e câmera: troque o quadrado por um personagem animado e faça a câmera seguir.
  5. Publicar: subir o build no itch.io e pedir para três pessoas jogarem.

Se ainda está decidindo se a Unity é a engine certa para o seu objetivo, o post sobre se vale a pena aprender Unity em 2026 compara os cenários. Se já decidiu, refaça este tutorial amanhã sem olhar o texto. O que você travar na segunda vez é exatamente o que precisa estudar.

Perguntas frequentes

Dá para aprender Unity sem saber programar?

Dá para começar, sim. O primeiro jogo deste tutorial usa um script curto que você copia e entende linha por linha. Só que, para passar de exemplos prontos, você vai precisar estudar o básico de C#: variáveis, condicionais e métodos.

Qual versão da Unity usar para seguir um tutorial em 2026?

Use a Unity 6.3 LTS, que é a versão de suporte longo atual, com suporte até dezembro de 2027. Ela é a escolha padrão para estudar e para lançar jogo. Tutoriais gravados em versões mais antigas funcionam em boa parte, mas alguns nomes de API mudaram.

A Unity é boa para quem está começando?

É uma boa porta de entrada porque tem muito material, comunidade grande e serve tanto para 2D quanto para 3D. O editor assusta no primeiro dia pela quantidade de janelas, mas você usa só seis delas no começo.

Quanto tempo leva para fazer o primeiro jogo na Unity?

Um jogo de uma tela como o deste tutorial cabe numa tarde, contando a instalação. Um jogo pequeno e completo, com menu, fases e som, costuma levar semanas para quem está aprendendo, porque cada sistema novo traz um conceito novo.