• Jogos
  • Setor
  • Recursos
  • Comunidade
  • Aprendizado
  • Suporte
Desenvolvimento
Engine do Unity
Crie jogos 2D e 3D para qualquer plataforma
BaixarPlanos e preços
Monetização
Compra no aplicativo (IAP)
Descubra e gerencie IAP em todas as lojas
Mediation
Maximize a receita e otimize a monetização
Qualidade do anúncio
Proteja a experiência do usuário do seu aplicativo
Tapjoy
Construa lealdade do usuário a longo prazo
Todos os produtos de monetização
Aquisição de usuários
Aquisição de usuários
Seja descoberto e adquira usuários móveis
Unity Vector AI
Conecte jogadores com os jogos certos
Aura publicidade no dispositivo
Alcance usuários no dispositivo no pico de engajamento
Todos os produtos de crescimento
Casos de uso
Colaboração 3D
Construa e revise projetos 3D em tempo real
Treinamento imersivo
Treine em ambientes imersivos
Experiências do cliente
Crie experiências interativas em 3D
Todas as soluções da indústria
Setores
Manufatura
Alcançar excelência operacional
Varejo
Transformar experiências em loja em experiências online
Automotivo
Elevar a inovação e as experiências dentro do carro
Todos os setores
Biblioteca técnica
Documentação
Manuais do usuário oficiais e referências de API
Ferramentas de desenvolvedor
Versões de lançamento e rastreador de problemas
Roteiro
Revisar recursos futuros
Glossário
Biblioteca de termos técnicos
Insights
Estudos de caso
Histórias de sucesso do mundo real
Guias de melhores práticas
Dicas e truques de especialistas
Todos os recursos
Novidades
Blog
Atualizações, informações e dicas técnicas
Notícias
Notícias, histórias e centro de imprensa
Central da Comunidade
Discussões
Discutir, resolver problemas e conectar
Eventos
Eventos globais e locais
Histórias da comunidade
Made with Unity
Mostrando criadores do Unity
Transmissões ao vivo
Junte-se a desenvolvedores, criadores e insiders
Prêmios Unity
Celebrando criadores do Unity em todo o mundo
Para todos os níveis
Unity Learn
Domine habilidades do Unity gratuitamente
Treinamento profissional
Aprimore sua equipe com treinadores do Unity
É iniciante no Unity?
Conceitos básicos
Inicie seu aprendizado
Caminhos Essenciais do Unity
É iniciante no Unity? Comece sua jornada
Tutoriais
Dicas práticas e melhores práticas
Educação
Para estudantes
Impulsione sua carreira
Para educadores
Impulsione seu ensino
Concessão de Licença Educacional
Leve o poder do Unity para sua instituição
Certificações
Prove sua maestria em Unity
Opções de suporte
Obter ajuda
Ajudando você a ter sucesso com Unity
Planos de sucesso
Alcance seus objetivos mais rápido com suporte especializado
Perguntas frequentes
Respostas para perguntas comuns
Entre em contato conosco
Conecte-se com nossa equipe
Planos e preços
Idioma
  • English
  • Deutsch
  • 日本語
  • Français
  • Português
  • 中文
  • Español
  • Русский
  • 한국어
Social
Moeda
Comprar
  • Produtos
  • Unity Ads
  • Assinatura
  • Unity Asset Store
  • Revendedores
Educação
  • Estudantes
  • Educadores
  • Instituições
  • Certificação
  • Learn
  • Programa de Desenvolvimento de Habilidades
Baixar
  • Unity Hub
  • Arquivo de download
  • Programa beta
Unity Labs
  • Laboratórios
  • Publicações
Recursos
  • Plataforma de aprendizado
  • Comunidade
  • Documentação
  • Unity QA
  • Perguntas frequentes
  • Status dos Serviços
  • Estudos de caso
  • Made with Unity
Unity
  • Nossa empresa
  • Boletim informativo
  • Blog
  • Eventos
  • Carreiras
  • Ajuda
  • Imprensa
  • Parceiros
  • Investidores
  • Afiliados
  • Segurança
  • Impacto social
  • Inclusão e Diversidade
  • Entre em contato conosco
Copyright © 2025 Unity Technologies
  • Informações legais
  • Política de Privacidade
  • Cookies
  • Não venda nem compartilhe minhas informações pessoais

“Unity”, logotipos Unity e outras marcas comerciais de Unity são marcas comerciais ou marcas comerciais registradas da Unity Technologies ou de suas afiliadas (mais informações aqui). Outros nomes e marcas são marcas comerciais de seus respectivos detentores.

Hero background image

Configurando seu projeto Unity para um desempenho mais forte

Esta página da Web foi automaticamente traduzida para sua conveniência. Não podemos garantir a precisão ou a confiabilidade do conteúdo traduzido. Se tiver dúvidas sobre a precisão do conteúdo traduzido, consulte a versão oficial em inglês da página da Web.
Clique aqui.

Este é o primeiro de uma série de artigos que descompacta dicas de otimização para seus projetos Unity. Use-os como um guia para rodar em taxas de quadros mais altas com menos recursos. Depois de experimentar essas melhores práticas, não se esqueça de conferir as outras páginas da série:

  • Otimização de desempenho para gráficos de alta qualidade
  • Gerenciando o uso da GPU para jogos de PC e console
  • Programação avançada e arquitetura de código
  • Desempenho de física aprimorado para um gameplay suave

Veja nossos últimos guias de otimização para desenvolvedores e artistas do Unity 6:

  • Otimize o desempenho do seu jogo para dispositivos móveis, XR e para a Web no Unity
  • Otimize o desempenho do seu jogo para consoles e PCs no Unity
  • Configure seu projeto para um desempenho mais forte
  • Desative configurações de Player/Qualidade desnecessárias
  • Mude para IL2CPP
  • Escolha a taxa de quadros certa
  • Reduza ou desative a frequência do acelerômetro
  • Evite hierarquias grandes
  • Comprimir suas texturas
  • Aproveite as Configurações de Importação de Textura
  • Agrupe suas texturas
  • Verifique suas contagens de polígonos
  • Gerenciar Configurações de Importação de Malha
  • Veja mais otimizações de malha
  • Audite seus ativos
  • Ajuste o buffer de textura assíncrono
  • Transmita Mip Maps e texturas
  • Use Addressables

Configure seu projeto para um desempenho mais forte

Um pipeline de ativos bem otimizado pode acelerar os tempos de carregamento, reduzir o uso de memória e melhorar o desempenho em tempo de execução. Ao trabalhar com um artista técnico experiente, sua equipe pode definir e impor formatos de ativos, especificações e configurações de importação para garantir um fluxo de trabalho eficiente e simplificado.

Não confie apenas nas configurações padrão. Aproveite a guia de substituição específica da plataforma para otimizar ativos como texturas, geometria de malha e arquivos de áudio. Configurações incorretas podem resultar em tamanhos de build maiores, tempos de build mais longos e uso de memória ruim.

Considere usar Predefinições para estabelecer configurações básicas adaptadas às necessidades específicas do seu projeto. Essa abordagem proativa ajuda a garantir que os ativos sejam otimizados desde o início, levando a um melhor desempenho e uma experiência mais consistente em todas as plataformas.

Para mais orientações, consulte as melhores práticas para ativos artísticos ou explore o curso Otimização de Arte 3D para Aplicativos Móveis no Unity Learn. Esses recursos fornecem insights valiosos que podem ajudá-lo a tomar decisões informadas sobre a otimização de ativos para builds da web Unity, móveis e aplicações XR.

Os três tipos de atlases ao empacotar sprites 2D no Unity
TRÊS TIPOS DE ATLASES AO EMPACOTAR SPRITES 2D NO UNITY

Desative configurações desnecessárias de Player ou Qualidade

Nas configurações de Player, desative Auto Graphics API para plataformas não suportadas para evitar a geração de variantes excessivas de shader. Desative Arquiteturas de Destino para CPUs mais antigas se seu aplicativo não as suportar.

Nas configurações de Qualidade, desative níveis de Qualidade desnecessários.

Saiba mais sobre a API Gráfica.

Configurações de qualidade
NAS CONFIGURAÇÕES DE QUALIDADE, DESATIVE NÍVEIS DE QUALIDADE DESNECESSÁRIOS.

Mude para IL2CPP

Mudar o backend de script de Mono para IL2CPP (Linguagem Intermediária para C++) pode proporcionar um desempenho geral melhor em tempo de execução. No entanto, isso também pode aumentar os tempos de construção. Alguns desenvolvedores preferem usar Mono localmente para iteração mais rápida, e depois mudar para IL2CPP para máquinas de construção e/ou candidatos a lançamento. Consulte a documentação sobre otimização de tempos de construção do IL2CPP para mais informações sobre como reduzir seus tempos de construção.

Observação: Ao usar esta opção, o Unity converte o código IL de scripts e assemblies para C++ antes de criar um arquivo binário nativo (.exe, .apk, .xap) para sua plataforma de destino.

Veja a Introdução aos internos do IL2CPP ou consulte a página do manual de opções do compilador para aprender como as várias opções do compilador afetam o desempenho em tempo de execução.

Escolha a taxa de quadros certa

Projetos móveis devem equilibrar taxas de quadros com duração da bateria e estrangulamento térmico. Em vez de forçar os limites do seu dispositivo a 60 fps, considere rodar a 30 fps como um compromisso. O Unity padrão é 30 fps para dispositivos móveis.

Ao direcionar plataformas XR, as considerações de taxa de quadros são ainda mais críticas. Uma taxa de quadros de 72 fps, 90 fps ou até mesmo 120 fps é frequentemente necessária para manter a imersão e prevenir o enjoo. Essas taxas de quadros mais altas ajudam a garantir uma experiência suave e responsiva, o que é crucial para o conforto em ambientes de VR. No entanto, isso traz seus próprios desafios em termos de consumo de energia e gerenciamento térmico, particularmente em headsets VR autônomos.

Escolher a taxa de quadros certa é entender as demandas e restrições específicas da sua plataforma de destino, seja um dispositivo móvel, um headset VR autônomo ou um dispositivo AR. Ao selecionar cuidadosamente uma taxa de quadros apropriada, você pode otimizar tanto o desempenho quanto a experiência do usuário em diferentes plataformas.

Você também pode ajustar a taxa de quadros dinamicamente durante a execução com Application.targetFrameRate. Por exemplo, você pode cair abaixo de 30 fps para cenas lentas ou relativamente estáticas e reservar configurações de fps mais altas para o gameplay.

Mais informações estão disponíveis na documentação.

Reduza ou desative a frequência do acelerômetro

Unity agrupa o acelerômetro do seu dispositivo móvel várias vezes por segundo. Desative isso se não estiver sendo usado em sua aplicação, ou reduza sua frequência para um melhor desempenho geral.

Saiba mais sobre o acelerômetro.

Como definir a frequência do acelerômetro
DESATIVE A FREQUÊNCIA DO ACELERÔMETRO SE NÃO ESTIVER USANDO-A EM SEU JOGO PARA DISPOSITIVOS MÓVEIS.

Evite hierarquias grandes

Divida suas hierarquias. Se seus GameObjects não precisam estar aninhados em uma hierarquia, simplifique a hierarquia de pais.

Hierarquias menores se beneficiam do multithreading para atualizar os Transforms em sua cena. Hierarquias complexas incurram em cálculos desnecessários de Transform e mais custo para a coleta de lixo.

Veja Otimização da Hierarquia e esta palestra Unite para dicas sobre Transforms.

Comprimir suas texturas

Considere esses dois exemplos acima usando o mesmo modelo e textura. As configurações à esquerda consomem quase 26 vezes mais memória do que as à direita, sem muita melhoria na qualidade visual.

Use Compressão de Textura Escalável Adaptativa (ATSC) para dispositivos móveis, XR e a web. A grande maioria dos jogos em desenvolvimento tende a direcionar dispositivos de especificação mínima que suportam compressão ATSC.

As únicas exceções são:

  • jogos iOS direcionados a dispositivos A7 ou inferiores (por exemplo, iPhone 5, 5S, etc.) – use PVRTC
  • jogos Android direcionados a dispositivos anteriores a 2016 – useETC2(Compressão de Textura Ericsson)

Se formatos compactados como PVRTC e ETC não forem suficientemente de alta qualidade, e se ASTC não for totalmente suportado na sua plataforma de destino, tente usar texturas de 16 bits em vez de texturas de 32 bits.

Consulte o manual para mais informações sobre formato de compressão de textura recomendado por plataforma.

Texturas não compactadas vs texturas compactadas DXT1
TEXTURAS NÃO COMPACTADAS REQUEREM MAIS MEMÓRIA DO QUE AS COMPACTADAS.

Aproveite as Configurações de Importação de Textura

Texturas podem potencialmente usar recursos excessivos, então otimizar suas Configurações de Importação é crítico. Em geral, tente seguir estas diretrizes:

  • Reduza o Tamanho Máximo:Use as configurações mínimas que produzem resultados visualmente aceitáveis. Isso é não destrutivo e pode rapidamente reduzir sua memória de textura.
  • Use potências de dois (POT):Unity requer dimensões de textura POT para formatos de compressão de textura.
  • Desative a opção Habilitar Leitura/Gravação:Quando habilitada, esta opção cria uma cópia na memória endereçável da CPU e GPU, dobrando a pegada de memória da textura. Desative-a na maioria dos casos, e habilite-a apenas se você gerar uma textura em tempo de execução que precisa ser sobrescrita. Você também pode forçar esta opção via Texture2D.Apply, passando makeNoLongerReadable definido como True.
  • Desative Mip Maps desnecessários:Mip Maps não são necessários para texturas que permanecem em um tamanho consistente na tela, como Sprites 2D e Gráficos de UI. No entanto, deixe os Mip Maps habilitados para modelos 3D que variam em distância da Câmera.

Saiba mais sobre Configurações de Importação de Textura.

Agrupe suas texturas

Atlasing é o processo de agrupar várias texturas menores em uma única textura maior. Atlas de Texturas reduz o uso de memória e requer menos chamadas de desenho, diminuindo assim o esforço exigido pela GPU.

  • Para projetos 2D: Use um Atlas de Sprites (Asset > Criar > 2D > Atlas de Sprites) em vez de renderizar sprites ou texturas individuais.
  • Para projetos 3D: Você pode usar seu pacote de Criação de Conteúdo Digital (DCC) de sua escolha. Várias ferramentas de terceiros como MA_TextureAtlasser ou TexturePacker também podem ser usadas para construir Atlas de Texturas.

Combine texturas e remapeie UVs para qualquer geometria 3D que não requer mapas de alta resolução. Um editor visual lhe dá a capacidade de definir e priorizar os tamanhos e posições no Atlas de Textura ou Folha de Sprites.

O Texture Packer consolida os mapas individuais em uma grande textura. Unity pode então emitir uma única chamada de desenho para acessar as texturas empacotadas com uma sobrecarga de desempenho menor.

Leia mais sobre Atlas de Sprites aqui.

Interface de atlas de texturas
USE ATLAS DE TEXTURAS PARA REDUZIR O NÚMERO DE CHAMADAS DE DESENHO.

Verifique suas contagens de polígonos

Modelos de maior resolução significam mais uso de memória e potencialmente mais tempo de GPU. Sua geometria de fundo precisa de meio milhão de polígonos? Considere reduzir modelos em seu pacote DCC de escolha. Exclua polígonos invisíveis do ponto de vista da câmera e use texturas e mapas normais para detalhes finos em vez de malhas de alta densidade.

Remova faces do modelo
REMOVA QUAISQUER FACES INVISÍVEIS PARA OTIMIZAR SEUS MODELOS.

Gerenciar Configurações de Importação de Malha

Assim como texturas, malhas podem consumir memória significativa, então escolha configurações de importação otimizadas para elas. Reduza a pegada de memória das malhas com as seguintes práticas:

  • Comprimir a malha: Compressão agressiva pode reduzir o espaço em disco (a memória em tempo de execução, no entanto, não é afetada). Observe que a quantização da malha pode resultar em imprecisões, então experimente os níveis de compressão para ver o que funciona para seus modelos.
  • Desativar Leitura/Gravação: Ativar esta opção duplica a malha na memória, mantendo uma cópia da malha na memória do sistema e outra na memória da GPU. Na maioria dos casos, você deve desativá-la (no Unity 2019.2 e versões anteriores, esta opção está marcada por padrão).
  • Desativar rigs e formas de mistura: Se sua malha não precisar de animação esquelética ou de formas de mistura, desative essas opções sempre que possível.

Desativar normais e tangentes: Se você tiver certeza absoluta de que o material da malha não precisará de normais ou tangentes, desmarque essas opções para economizar ainda mais.

Verifique suas configurações de importação de malha.
VERIFIQUE SUAS CONFIGURAÇÕES DE IMPORTAÇÃO DE MALHA

Veja mais otimizações de malha

Opções adicionais de otimização de malha estão disponíveis nas Configurações do Player:

  • Compressão de Vértice define a compressão de vértices de cada canal. Por exemplo, você pode ativar a compressão para tudo, exceto posições e UVs de lightmap. Isso pode reduzir o uso de memória em tempo de execução das suas malhas.
  • Observação: A configuração de Compressão de Malha nas Configurações de Importação de cada malha substitui a configuração de Compressão de Vértice. Nesse caso, a cópia em tempo de execução da malha é descomprimida e pode usar mais memória.
  • Otimizar Dados da Malha remove quaisquer dados das malhas que não são necessários pelo material aplicado a elas (como tangentes, normais, cores e UVs).

Audite seus ativos

Ao automatizar o processo de auditoria, você pode evitar alterar acidentalmente as configurações do ativo. O AssetPostProcessor pode ajudá-lo a padronizar suas Configurações de Importação ou analisar ativos existentes. Ele permite que você execute scripts ao importar ativos e, essencialmente, solicita que você personalize as configurações antes e/ou depois de importar modelos, texturas, áudio e mais.

Leia mais sobre Auditoria de ativos no Guia de compreensão de otimização.

Ajuste o buffer de textura assíncrono

Unity usa um buffer circular para enviar texturas para a GPU. Você pode ajustar manualmente esse buffer de textura assíncrono via QualitySettings.asyncUploadBufferSize.

Se a taxa de upload for muito lenta ou a thread principal travar enquanto carrega várias texturas ao mesmo tempo, ajuste esses buffers de textura. Você geralmente pode definir o valor (em MB) para o tamanho da maior textura que precisa carregar na cena.

Lembre-se de que mudar os valores padrão pode levar a uma alta pressão de memória. Além disso, você não pode devolver a memória do buffer circular ao sistema após o Unity alocá-la. Se a memória da GPU sobrecarregar, a GPU descarrega a textura mais recente e menos utilizada, e força a CPU a reenvia-la na próxima vez que entrar no frustum da Câmera.

Explore todas as restrições de memória para buffers de textura no tutorial de gerenciamento de memória, e consulte Otimização do desempenho de carregamento para ver como você pode melhorar os tempos de carregamento.

Transmita Mip Maps e texturas

O sistema Streaming de Mip Map dá a você controle sobre quais níveis de Mip Map devem ser carregados na memória. Ative-o indo para as configurações de Qualidade do Unity (Editar > Configurações do Projeto > Qualidade) e marque a opção Streaming de Textura. Você pode ativar Streaming de Mip Maps nas Configurações de Importação de Textura em Avançado.

Esse sistema reduz a quantidade total de memória necessária para texturas porque carrega apenas os Mip Maps necessários para renderizar a posição atual da Câmera. Caso contrário, o Unity carrega todas as texturas por padrão.

O Streaming de Textura troca uma pequena quantidade de recursos da CPU para economizar uma quantidade potencialmente grande de memória da GPU. Ele também reduz automaticamente os níveis de Mip Map para permanecer dentro do Orçamento de Memória definido pelo usuário.

Você pode usar a API de Streaming de Mip Map para mais controle.

Opções de Streaming de Textura
CONFIGURAÇÕES DE STREAMING DE TEXTURAS

Use Addressables

O Addressable Asset System fornece uma maneira simplificada de gerenciar seu conteúdo. Este sistema unificado carrega AssetBundles por "endereço" ou alias, de forma assíncrona a partir de um caminho local ou de uma rede de entrega de conteúdo (CDN) remota.

Se você dividir seus ativos não relacionados a código (modelos, texturas, Prefabs, áudio e até mesmo cenas inteiras) em um AssetBundle, você pode separá-los como conteúdo para download (DLC).

Em seguida, use Addressables para criar uma build inicial menor para seu aplicativo móvel. Cloud Content Delivery permite que você hospede e entregue o conteúdo do seu jogo aos jogadores à medida que eles progridem no jogo.

Veja o tutorial Get started with Addressables no Unity Learn para uma visão rápida de como o Addressable Asset System pode funcionar em seu projeto.

E clique here para ver como o Addressable Asset System pode facilitar o gerenciamento de ativos.

Carregue ativos por "endereço" usando o Addressable Asset System.
CARREGAR ATIVOS POR "ENDEREÇO" USANDO O ADDRESSABLE ASSET SYSTEM
Mais melhores práticas da Unity
Mais dicas para Unity 6

Encontre mais melhores práticas e dicas para desenvolvedores e criadores avançados da Unity no hub de melhores práticas da Unity. Escolha entre mais de 30 guias, criadas por especialistas da indústria, engenheiros e artistas técnicos da Unity, que ajudarão você a desenvolver de forma eficiente com as ferramentas e sistemas da Unity.

Mais melhores práticas