Voltar para o Blog
Quest Log

Como Exportar Jogo na Unity: Build Profiles e Executável

Caixa de papelão aberta com um cartucho de jogo brilhando dentro, saindo de uma janela de editor para uma pasta no computador

Como exportar jogo na Unity 6 pelos Build Profiles: gerar o executável Windows, quais arquivos mandar, Development Build para achar erro e checklist do itch.io.

Ferramenta:Unity

Como Exportar Jogo na Unity: Build Profiles e Executável

Para exportar um jogo na Unity 6, abra File > Build Profiles, selecione a plataforma (Windows, por exemplo), confira se as cenas estão na Scene List e clique em Build. A Unity gera uma pasta com o executável e os arquivos que ele precisa para rodar. O detalhe que derruba quase todo mundo na primeira vez: o jogo é a pasta inteira, não só o .exe.

Este guia mostra como exportar jogo na Unity do começo ao fim no Unity 6.3 LTS: Build Profiles, cenas, Player Settings que importam, o que vai na pasta, como usar o Development Build e o log para achar erro que só acontece no executável, e um checklist antes de subir no itch.io.

Como exportar jogo na Unity: visão geral

O processo tem quatro etapas:

  1. Escolher a plataforma e deixá-la ativa.
  2. Listar as cenas que entram no jogo, na ordem certa.
  3. Configurar o Player Settings: nome, ícone, resolução.
  4. Gerar o build numa pasta vazia e testar fora do editor.

Pré-requisito: o módulo da plataforma instalado. O build para o sistema que você está usando (Windows no Windows, por exemplo) vem com o editor. Para Android, Web ou outro sistema, adicione o módulo pelo Unity Hub em Installs > Manage > Add modules.

Build Profiles no Unity 6

Abra File > Build Profiles. A janela tem duas colunas:

  • Esquerda: a Scene List (lista global de cenas), as Platforms disponíveis (Windows, macOS, Linux, Android, iOS, Web e outras) e, mais abaixo, os Build Profiles que você criar.
  • Direita: as configurações do item selecionado e os botões de build.

Cada plataforma já funciona como um perfil básico. Além delas, você pode criar perfis seus: clique em Add Build Profile, escolha a plataforma no Platform Browser, dê um nome e confirme. Isso é útil para ter, por exemplo, um perfil "Windows Demo" e outro "Windows Completo", cada um com sua lista de cenas e configurações, sem ficar trocando opções na mão. Perfis podem ser duplicados com o botão direito, em Copy to new profile.

Para tornar um perfil ou plataforma ativo, selecione e clique em Switch Profile. Um selo Active aparece ao lado do nome. Trocar de plataforma pode reimportar assets (texturas são comprimidas de jeito diferente em cada plataforma), então faça isso com calma em projetos grandes.

Adicionar cenas e escolher a plataforma

Cenas: clique em Scene List na coluna da esquerda.

  1. Abra a cena inicial do jogo (o menu, se tiver) e clique em Add Open Scenes. Ou arraste cenas do Project direto para a lista.
  2. Arraste para reordenar. A Unity monta o build na ordem da lista, e a primeira cena é a que abre quando o jogo inicia.
  3. Desmarque uma cena para tirá-la do build sem tirar da lista (útil para cenas de teste).

Num perfil seu, dá para ter uma lista de cenas própria: selecione o perfil, clique em Add Settings e escolha Scene List. Assim, o perfil "Demo" exporta só as duas primeiras fases.

Lembre que SceneManager.LoadScene só carrega cenas que estão nessa lista. Se o seu jogo troca de fase e funciona no editor mas quebra no build, a primeira coisa a conferir é se todas as cenas estão marcadas.

Plataforma: selecione Windows e, se não estiver ativo, clique em Switch Profile. Nas configurações da direita, confira a Architecture (Intel 64-bit é a padrão para a maioria dos PCs).

Player Settings que importam: nome, ícone, resolução

Abra Edit > Project Settings > Player (a janela de Build Profiles também tem um atalho para o Player Settings). Os campos que fazem diferença no primeiro build:

No topo:

  • Company Name: seu nome ou do seu estúdio. Ele define a pasta onde o jogo salva dados e logs.
  • Product Name: o nome do jogo. Aparece na barra da janela e também entra no caminho dos logs.
  • Version: comece em 0.1.0 e suba a cada build que você distribuir. Ajuda a saber qual versão o jogador tem.
  • Default Icon: arraste uma imagem quadrada (512x512 funciona bem). É o ícone do .exe e da barra de tarefas.

Em Resolution and Presentation:

  • Fullscreen Mode: Fullscreen Window abre em tela cheia sem trocar a resolução do monitor; Windowed abre em janela. Para jogo de game jam no itch.io, janela costuma gerar menos reclamação.
  • Default Screen Width / Height: tamanho da janela no modo Windowed. 1280x720 é seguro.
  • Resizable Window: deixe marcado se o jogo se adapta bem a outros tamanhos.
  • Run In Background: marque se o jogo deve continuar rodando quando perder o foco (raro para jogo single player).

Em Splash Image: na Unity 6, a splash screen é opcional também no plano Personal. Desligue ou personalize aqui.

Em Other Settings > Configuration:

  • Scripting Backend: Mono ou IL2CPP. Mono compila rápido e é o padrão para desktop. IL2CPP converte o C# para C++ e compila em nativo; o build demora bem mais e exige o módulo Windows Build Support (IL2CPP) no Hub e as ferramentas de C++ do Visual Studio (a carga de trabalho de desenvolvimento para desktop com C++). Para o primeiro build, use Mono.

Gerar o executável e o que vai na pasta

  1. Crie uma pasta vazia e fora de Assets, por exemplo Builds/Windows na raiz do projeto (e coloque Builds/ no .gitignore).
  2. Em File > Build Profiles, com Windows ativo, clique em Build.
  3. Escolha a pasta. Aguarde.

Com Mono, a pasta fica mais ou menos assim (o nome vem do Product Name):

MeuJogo.exe
MeuJogo_Data/
MonoBleedingEdge/
UnityPlayer.dll
UnityCrashHandler64.exe

Com IL2CPP aparece um GameAssembly.dll no lugar do MonoBleedingEdge, e também uma pasta terminada em _BackUpThisFolder_ButDontShipItWithYourGame. Se o projeto usa Burst, pode aparecer outra terminada em _BurstDebugInformation_DoNotShip.

Regras de distribuição:

  • Mande tudo junto: o .exe, a pasta _Data, o UnityPlayer.dll, o MonoBleedingEdge (ou GameAssembly.dll) e o crash handler.
  • Não mande as pastas que dizem "DontShip" e "DoNotShip" no nome. Elas guardam símbolos de depuração e código gerado, servem para você investigar crash, não para o jogador. Guarde uma cópia delas junto com a versão correspondente.
  • Compacte a pasta em .zip. É assim que itch.io, Game Jolt e quase toda plataforma esperam receber.

Teste o .zip em outro computador ou, pelo menos, extraia numa pasta diferente e rode. Jogo que só roda no PC de quem fez é o clássico de quem pula esse passo.

Gerar o primeiro executável dá uma sensação ótima, e é merecida. Mas o build é o fim de um caminho em que a maioria nunca chega: ter um jogo com começo, meio, fim, menu e um nível de acabamento que faça alguém querer baixar. Chegar até aqui com um projeto inteiro, e não com uma cena de teste, é o que separa quem publica de quem coleciona protótipos.

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

Development Build e logs para achar erro

Às vezes o jogo funciona no editor e quebra no executável. Para investigar:

1. Gere um Development Build. Nas configurações da plataforma em Build Profiles, marque Development Build. Opcionalmente, marque Script Debugging (para anexar o debugger do seu editor de código) e Autoconnect Profiler. O jogo exportado mostra "Development Build" no canto da tela, e erros de script aparecem num console na própria tela do jogo.

2. Leia o Player.log. Todo build da Unity escreve um log. No Windows, ele fica em:

%USERPROFILE%\AppData\LocalLow\<Company Name>\<Product Name>\Player.log

Cole o caminho na barra do Explorador de Arquivos, trocando pelos nomes do seu Player Settings. A cada execução, o log anterior vira Player-prev.log. Procure por Exception e Error.

O log do editor é outro arquivo, em %LOCALAPPDATA%\Unity\Editor\Editor.log. É lá que aparecem os detalhes quando o build falha antes de gerar o executável.

3. Use Debug.Log com intenção. Mensagens de Debug.Log também vão para o Player.log. Um log no início de cada cena e em cada ação importante mostra exatamente até onde o jogo chegou.

Erros comuns de build e como resolver

"The type or namespace name 'UnityEditor' could not be found" no build: algum script de jogo usa using UnityEditor;. Código do editor não vai para o executável. Mova o script para uma pasta chamada Editor ou envolva o trecho com #if UNITY_EDITOR e #endif.

Build falhou e o Console não explica: abra o Editor.log e procure a primeira linha de erro.

Jogo abre numa tela preta ou na cena errada: a primeira cena da Scene List não é a que você imaginava, ou a cena que deveria abrir está desmarcada.

Erro dizendo que a cena "couldn't be loaded" porque não foi adicionada ao build: a cena chamada por LoadScene não está na Scene List, ou está desmarcada. Adicione e marque.

IL2CPP falha com erro de compilador C++: faltam as ferramentas de C++ do Visual Studio ou o módulo IL2CPP. Instale ou volte para Mono.

Antivírus apaga o executável: alguns antivírus desconfiam de executáveis novos e pouco baixados. Crie uma exceção na pasta de builds e, ao distribuir, avise o jogador que é falso positivo.

O jogo não fecha no executável: falta um jeito de sair. Arquivo SairDoJogo.cs:

using UnityEngine;
using UnityEngine.InputSystem;

public class SairDoJogo : MonoBehaviour
{
    private void Update()
    {
        Keyboard teclado = Keyboard.current;
        if (teclado == null || !teclado.escapeKey.wasPressedThisFrame)
        {
            return;
        }

#if UNITY_EDITOR
        UnityEditor.EditorApplication.isPlaying = false;
#else
        Application.Quit();
#endif
    }
}

Application.Quit não faz nada dentro do editor, por isso o bloco #if UNITY_EDITOR para o Play Mode quando você testa na Unity. Coloque o script num objeto da primeira cena.

Próximo passo: publicar

Antes de subir no itch.io, passe por este checklist:

  • Product Name, Company Name, versão e ícone configurados.
  • Todas as cenas na Scene List, na ordem certa.
  • Build gerado com Development Build desmarcado.
  • Pasta compactada sem as pastas "DontShip" e "DoNotShip".
  • Testado num PC que não é o seu, a partir do .zip.
  • Tem como sair do jogo (Esc ou menu).
  • Janela abre num tamanho razoável em monitor pequeno.

Com o .zip pronto, o post de como publicar jogo no itch.io mostra a página, as capturas e a configuração de download. Quando o objetivo for vender, o guia de como publicar jogo na Steam cobre o Steam Direct e o que a loja exige. E se o próximo build é para celular, o caminho continua em como gerar APK na Unity.

Perguntas frequentes

Onde fica o Build Settings na Unity 6?

Na Unity 6, a janela de build é a Build Profiles, aberta em File > Build Profiles. Ela reúne a lista de cenas, a escolha de plataforma e os perfis de build. Os tutoriais que falam em Build Settings se referem à mesma função.

Por que meu jogo da Unity não abre no PC do meu amigo?

O motivo mais comum é ter enviado só o arquivo .exe. O jogo precisa da pasta _Data, do UnityPlayer.dll e dos demais arquivos que ficam ao lado do executável. Compacte a pasta inteira do build em .zip e envie.

Qual a diferença entre Mono e IL2CPP no build Windows?

Mono compila mais rápido e é o padrão para desktop, ótimo para testar e para a maioria dos jogos indie. IL2CPP converte o código para C++ e compila em nativo, o que pode dar mais desempenho, mas o build demora mais e exige o módulo IL2CPP e as ferramentas de C++ do Visual Studio.

Onde fica o log de erro do jogo exportado da Unity no Windows?

No arquivo Player.log, em %USERPROFILE%\AppData\LocalLow\NomeDaEmpresa\NomeDoProduto\Player.log. Nome da empresa e do produto são os definidos em Player Settings. É o primeiro lugar para olhar quando o jogo exportado se comporta diferente do editor.