O que você está procurando?
Hero background image

Ferramentas para perfis e depuração

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.

Desempenho suave é essencial para criar grandes experiências de jogo que alcancem uma ampla gama de dispositivos e jogadores. Unity fornece um conjunto completo de ferramentas de perfil e gerenciamento de memória que os desenvolvedores da Unity podem usar juntamente com as ferramentas de perfil nativas disponíveis para suas plataformas-alvo.

Neste artigo, fornecemos uma visão geral das ferramentas de perfil e depuração disponíveis com a Unity e aquelas disponíveis para plataformas-alvo.

As informações aqui são extraídas do e-book, Guia definitivo para perfis de jogos Unity (edição Unity 6), disponível para download gratuito. O e-book foi criado por especialistas da Unity, tanto externos quanto internos, em desenvolvimento de jogos, perfis e otimização.

Use o Unity e ferramentas nativas para obter os melhores resultados

Código leve e performático e uso otimizado de memória levam a uma melhor experiência do usuário em dispositivos de baixo e alto desempenho. Isso se aplica a tudo, desde ser capaz de alcançar mais usuários em dispositivos de baixo desempenho, lidando com calor e consumo de bateria, até os níveis de conforto dos seus jogadores e, em última análise, fatores que impulsionam maior adoção e retenção. Isso também pode ser um requisito para passar as especificações da plataforma de distribuição. O perfil é como um trabalho de detetive, desvendando os mistérios de por que o desempenho em sua aplicação está lento ou por que o código está alocando memória excessiva.

Os melhores ganhos com o perfil são obtidos quando você planeja cedo no ciclo de desenvolvimento do seu projeto. É um processo proativo e iterativo contínuo. Ao perfilar cedo e frequentemente, em vez de apenas antes de você enviar seu jogo, você e sua equipe podem entender e estabelecer uma "assinatura de desempenho" para o projeto. Se o desempenho despencar, por exemplo, você poderá facilmente identificar quando as coisas dão errado e rapidamente corrigir o problema.

Os resultados de perfil mais precisos vêm da execução e perfil de builds em dispositivos-alvo, bem como do uso de ferramentas específicas da plataforma para investigar as características de hardware de cada plataforma-alvo.

O Unity oferece uma gama de ferramentas de perfil gratuitas e poderosas para análise e otimização do código, tanto no Editor como no hardware. Existem também várias ótimas ferramentas de perfil nativas projetadas para cada plataforma-alvo, como aquelas disponíveis pelos principais proprietários de plataformas. Usar uma combinação de ambas fornece uma visão mais holística do desempenho da aplicação em todos os dispositivos-alvo.

O módulo Destaques no Profiler da Unity
O módulo Destaques no Profiler facilita entender como seu jogo está se saindo em relação ao tempo de quadro-alvo definido. Neste exemplo, muito trabalho de otimização é necessário tanto na CPU quanto na GPU para atingir os 60 fps alvo.

Ferramentas de perfil do Unity

As ferramentas de profiling da Unity estão disponíveis no Editor e através do Gerenciador de Pacotes. Essas ferramentas, juntamente com o Frame Debugger da Unity, são abordadas em mais detalhes no e-book Guia definitivo para profiling de jogos Unity (edição Unity 6).

- O Unity Profiler mede o desempenho do Editor Unity e da sua aplicação no modo Play ou modo de desenvolvimento enquanto conectado a um dispositivo.

- O Pacote de Profiling Core fornece APIs que você pode usar para adicionar informações contextuais às capturas do Unity Profiler.

- O Memory Profiler fornece uma análise detalhada de quanto memória seu jogo está usando e quais objetos estão utilizando.

- O Profile Analyzer permite que você compare dois conjuntos de dados de profiling lado a lado para analisar como suas mudanças afetam o desempenho da sua aplicação.

- O Project Auditor relata insights e problemas sobre os scripts, ativos e código no seu projeto, muitos dos quais estão relacionados ao desempenho.

A Unity também oferece várias ferramentas de depuração que complementam seu conjunto de ferramentas de profiling. O painel de Estatísticas de Exibição do Rendering Debugger, por exemplo, permite que você veja um conjunto limitado de números de desempenho e marcadores (CPU + GPU) em builds de desenvolvimento sem ter o Editor conectado.

O Frame Debugger na Unity
Use o Frame Debugger para analisar como ocorrem overdraws identificados.

Ferramentas de perfil nativas

Android / Arm

- Android Studio: A versão mais recente do Android Studio inclui um novo Android Profiler que substitui as ferramentas anteriores do Android Monitor. Use-o para coletar dados em tempo real sobre recursos de hardware em dispositivos Android.

- Arm Performance Studio: Um conjunto de ferramentas para ajudá-lo a fazer profiling e depurar seus jogos em grande detalhe, voltado para dispositivos que executam hardware Arm.

- Snapdragon Profiler: Especificamente para dispositivos com chipset Snapdragon apenas. Analise dados de CPU, GPU, DSP, memória, energia, térmica e rede para ajudar a encontrar e corrigir gargalos de desempenho.

Intel

- Intel VTune: Encontre e corrija rapidamente gargalos de desempenho em plataformas Intel com este conjunto de ferramentas. Apenas para processadores Intel.

- Intel GPA suite: Um conjunto de ferramentas focadas em gráficos para ajudar a melhorar o desempenho do seu jogo, identificando rapidamente áreas problemáticas.

Xbox / PC
- PIX: PIX é uma ferramenta de ajuste de desempenho e depuração para desenvolvedores de jogos do Windows e Xbox que utilizam DirectX 12. Inclui ferramentas para entender e analisar o desempenho da CPU e GPU, além de monitorar vários contadores de desempenho em tempo real.

PC / Universal

- AMD μProf: AMD uProf é uma ferramenta de análise de desempenho para entender e perfilar o desempenho de aplicações que rodam em hardware AMD.

- NVIDIA NSight: Ferramenta que permite aos desenvolvedores construir, depurar, perfilar e desenvolver software de ponta usando o mais recente hardware de computação visual da NVIDIA.

- Samply: Samply é um profiler de CPU de linha de comando de código aberto que usa o profiler do Firefox como sua interface. Funciona em macOS, Linux e Windows.

- Superluminal: Superluminal é um profiler de alto desempenho e alta frequência que suporta a profilagem de aplicações no Windows, Xbox One e PlayStation escritas em C++, Rust e .NET. É um produto pago, no entanto, e deve ser licenciado para ser usado. Confira nosso artigo de discussões para uma introdução rápida sobre como começar.

PlayStation

- Ferramentas de perfil de CPU estão disponíveis para hardware PlayStation. Para mais detalhes, você precisa ser um desenvolvedor registrado da PlayStation®, comece aqui.

iOS

- Xcode Instruments e o XCode Frame Debugger: Instruments é uma ferramenta poderosa e flexível de análise de desempenho e teste que faz parte do conjunto de ferramentas do Xcode.

WebGL

- Firefox Profiler: Aprofunde-se nas pilhas de chamadas e visualize gráficos de chama para builds do Unity WebGL (entre outras coisas) com o Firefox Profiler. Ele também possui uma ferramenta de comparação para visualizar capturas de perfil lado a lado.

- Chrome DevTools Performance: Outra ferramenta de navegador da web que pode ser usada para perfilar builds do Unity WebGL.

Analisador de Desempenho Streamline da Arm
O Streamline Performance Analyzer da Arm inclui uma riqueza de informações no contador de desempenho que podem ser capturadas durante sessões de criação ativa de perfis no hardware de destino do Arm. Isso é ótimo para identificar problemas de desempenho, como saturação de largura de banda de memória resultante de sobrecarga.

Ferramentas de depuração e perfil de GPU

Enquanto a ferramenta Unity Frame Debug captura e ilustra chamadas de desenho enviadas pela CPU, as seguintes ferramentas podem ajudar a mostrar o que a GPU faz quando recebe esses comandos.

Algumas são específicas da plataforma e oferecem uma integração mais próxima com a plataforma. Dê uma olhada nas ferramentas relevantes para as plataformas de interesse:

- Arm Streamline: Parte do conjunto de software Performance Studio da Arm, focando na medição de desempenho de baixo overhead da CPU e GPU.

- Arm Frame Advisor: Parte do conjunto de software Performance Studio da Arm, focando no perfil de API baseado em quadros.

- RenderDoc: Depurador de GPU para plataformas desktop e móveis, focando na depuração de API baseada em quadros.

- Intel GPA: Perfil de gráficos para plataformas baseadas em Intel

- Apple Frame Capture Debugging Tools: Depuração de GPU para plataformas Apple

- Visual Studio Graphics Diagnostics: Escolha isso e/ou PIX para plataformas baseadas em DirectX, como Windows ou Xbox

- NVIDIA Nsight Frame Debugger: Depurador de quadros baseado em OpenGL para GPUs NVIDIA

- AMD Radeon Developer Tool Suite: Profiler de GPU para GPUs AMD

- Xcode frame debugger: Para iOS e macOS.

E-books do Unity
Mais dicas para Unity 6

Você pode encontrar muitas mais melhores práticas e dicas para desenvolvedores e criadores avançados do Unity no hub de melhores práticas do 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 do Unity.