Experimente o novo exemplo do UI Toolkit – agora disponível na Asset Store

EDUARDO ORIZ / UNITY TECHNOLOGIESSenior Content Marketing Manager
Sep 9, 2022|14 Min
Experimente o novo exemplo do UI Toolkit – agora disponível na Asset Store
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.

No Unity 2021 LTS, UI Toolkit oferece uma coleção de recursos, ferramentas e funcionalidades para ajudar você a construir e depurar UIs adaptativas em uma ampla gama de aplicações de jogos e extensões do Editor. Seu fluxo de trabalho intuitivo permite que criadores do Unity em diferentes funções – artistas, programadores e designers – comecem a desenvolver UIs o mais rápido possível.

Veja nosso post de blog anterior para uma explicação dos principais benefícios do UI Toolkit, como escalabilidade e desempenho aprimorados, já sendo aproveitados por estúdios como a Mechanistry para seu jogo, Timberborn.

Enquanto Unity UI continua sendo a solução preferida para posicionar e iluminar UIs em um mundo 3D ou integrar com outros sistemas do Unity, o UI Toolkit para UIs em tempo de execução já pode beneficiar produções de jogos que buscam desempenho e escalabilidade a partir do Unity 2021 LTS. É particularmente eficaz para UI de Espaço de Tela – Sobreposição, e escala bem em uma variedade de resoluções de tela.

É por isso que estamos empolgados em anunciar dois novos recursos de aprendizado para melhor apoiar o desenvolvimento de UIs com o UI Toolkit:

  • Exemplo do UI Toolkit – Dragon Crashers: A demonstração está agora disponível para download gratuito na Asset Store.
  • Design e implementação de interface do usuário no Unity: Este e-book gratuito pode ser baixado aqui

Continue lendo para aprender sobre algumas características principais do projeto de exemplo do UI Toolkit.

Uma fatia de jogabilidade com design de UI completo

O exemplo do UI Toolkit demonstra como você pode aproveitar o UI Toolkit para suas próprias aplicações. Esta demonstração envolve uma interface completa sobre uma fatia do projeto 2D Dragon Crashers, um mini RPG, usando o fluxo de trabalho do UI Toolkit do Unity 2021 LTS em tempo de execução.

Editor e UI Builder com o projeto de demonstração do UI Toolkit, Dragon Crashers
Editor e UI Builder com o projeto de demonstração do UI Toolkit, Dragon Crashers

Algumas das ações ilustradas no projeto de exemplo mostram como:

  • Estilizar com seletores em arquivos de folha de estilo do Unity (USS) e usar templates UXML
  • Criar controles personalizados, como um medidor circular ou visualizações em abas
  • Personalize a aparência de elementos como deslizadores e botões de alternância
  • Use Render Texture para efeitos de sobreposição de UI, animações USS, temas sazonais e mais

Para experimentar o projeto após adicioná-lo aos seus ativos, entre em Modo de Jogo. Observe que as interfaces do UI Toolkit não aparecem na visualização da Cena. Em vez disso, você pode visualizá-las na visualização do Jogo ou Construtor de UI.

O menu à esquerda ajuda você a navegar pelas telas do menu principal modal. Esta coluna vertical de botões fornece acesso às cinco telas modais que compõem o menu principal (elas permanecem ativas enquanto você alterna entre as telas).

Embora alguma interatividade seja possível, como curar os personagens arrastando poções disponíveis na cena, a jogabilidade foi mantida ao mínimo para garantir o foco contínuo nos exemplos de UI.

UI para inventários, personagens, compras no jogo e mais

Vamos dar uma olhada mais de perto nas UIs na barra de menu:

  • A tela inicial serve como uma plataforma de lançamento ao iniciar o aplicativo. Você pode usar esta tela para jogar o jogo ou receber mensagens de chat simuladas.
Projeto de demonstração do UI Toolkit, Dragon Crashers, tela inicial
A tela inicial
  • A tela personagem envolve uma mistura de GameObjects e elementos de UI. É aqui que você pode explorar cada um dos quatro Dragon Crashers personagens. Use as abas de estatísticas, habilidades e biografia para ler os detalhes específicos do personagem e clique nos slots de inventário para adicionar ou remover itens. A área de visualização mostra um personagem 2D iluminado e animado sobre um fundo em mosaico.
Projeto de demonstração do UI Toolkit, Dragon Crashers, tela do personagem
A tela do personagem
  • A tela de recursos vincula-se à documentação, ao fórum e a outros recursos para aproveitar ao máximo o UI Toolkit.
Projeto de demonstração do UI Toolkit, Dragon Crashers, tela de recursos
A tela de recursos
  • A tela de loja simula uma loja dentro do jogo onde você pode comprar moeda dura e mole, como ouro ou gemas, além de bens virtuais como poções de cura. Cada item na tela da loja é um VisualTreeAsset separado. O UI Toolkit instancia esses ativos em tempo de execução; um para cada ScriptableObject nos Recursos/GameData.
Projeto de demonstração do UI Toolkit, Dragon Crashers, tela da loja
A tela da loja
  • A tela de correio é um leitor frontal de mensagens fictícias que usa um menu em abas para separar a caixa de entrada e as mensagens excluídas.
Projeto de demonstração do UI Toolkit, Dragon Crashers, tela de mensagens
A tela de correio
  • A tela de jogo é uma versão mini do projeto Dragon Crashers que começa a tocar automaticamente. Neste projeto, você notará alguns elementos revisados com o UI Toolkit, como um botão de pausa, barras de saúde e a capacidade de arrastar um elemento de poção de cura para seus personagens quando eles sofrerem dano.
Projeto de demonstração do UI Toolkit, Dragon Crashers, tela do jogo
A tela do jogo
Aumentando a interface do usuário com o UI Toolkit

O UI Toolkit permite que você construa UIs estáveis e consistentes para todo o seu projeto. Ao mesmo tempo, ele fornece ferramentas flexíveis para adicionar seus próprios toques de design e detalhes para desenvolver ainda mais o tema e o estilo do jogo.

Vamos revisar algumas das características usadas para refinar os designs de UI no exemplo:

  • Render Textures: As interfaces do UI Toolkit são renderizadas por último na fila de renderização, o que significa que você não pode sobrepor outros gráficos do jogo sobre uma interface do UI Toolkit. Texturas de Renderização fornecem uma solução alternativa para essa limitação, tornando possível integrar efeitos de jogo nas UIs do UI Toolkit. Embora esses efeitos baseados em Texturas de Renderização devam ser usados com moderação, você ainda poderá ter efeitos nítidos no contexto de uma UI em tela cheia, sem interromper o jogo. As imagens a seguir mostram várias Texturas de Renderização da demonstração.
Criando efeitos no UI Builder com texturas de renderização
Efeitos criados com Texturas de Renderização: As imagens superiores mostram como o quadro animado, feito de efeitos de partículas, é capturado em uma Textura de Renderização no UI Builder, enquanto a imagem inferior esquerda mostra um efeito que é acionado quando um personagem é atualizado, e o quadro inferior direito retrata um avatar animado.
  • Temas com folhas de estilo de tema (TSS): Os arquivos TSS são arquivos de ativos que são semelhantes aos arquivos USS regulares. Eles servem como um ponto de partida para definir seu próprio tema personalizado por meio de seletores USS, bem como configurações de propriedades e variáveis. Na demonstração, duplicamos os arquivos de tema padrão e modificamos as cópias para oferecer variações sazonais.
Temas no UI Toolkit
No menu Configurações, disponível através do ícone de engrenagem no canto superior direito, você pode trocar a folha de estilo do tema do projeto em execução por um tema de Natal ou Halloween.
  • Elementos de UI personalizados: Como os designers são treinados para pensar fora da caixa, o UI Toolkit oferece muito espaço para personalizar ou estender a biblioteca padrão. O projeto de demonstração destaca alguns elementos personalizados nas menus com abas, alternadores deslizantes e listas suspensas, além de um contador radial para demonstrar do que os artistas de UI são capazes ao lado dos desenvolvedores.
Personalizações avançadas no UI Toolkit
O próximo e-book explica como muitos desses controles foram personalizados. Você também pode encontrar detalhes sobre como criar uma visualização com abas personalizada na Documentação do Unity.
  • Transições USS para mudanças de estado animadas da UI: Adicionar transições às telas do menu pode polir e suavizar seus visuais. O UI Toolkit torna isso mais simples com a propriedade Animações de Transição, parte do Inspetor do UI Builder. Ajuste as propriedades de Propriedade, Duração, Easing e Atraso para configurar a animação. Então, basta alterar os estilos para que o UI Toolkit aplique a transição animada em tempo de execução.
Os botões e ícones da barra de menu animam para Eventos de Clique do Ponteiro.
Os botões e ícones da barra de menu animam para Eventos de Clique do Ponteiro.
  • Volume de pós-processamento para um desfoque de fundo: Um efeito popular em jogos é desfocar uma cena de jogo lotada para chamar a atenção do jogador para uma mensagem pop-up ou janela de diálogo específica. Você pode alcançar esse efeito ativando Profundidade de Campo no framework de Volume (disponível no Pipeline de Renderização Universal).
Efeito desfocado na UI
O framework de Volume facilita a criação desse efeito de imagem desfocada atrás do pop-up: O pós-processamento pode ser intensivo em recursos, mas se você ativar esses efeitos durante uma pausa no jogo, por exemplo, eles não devem impactar o desempenho do jogo.
Um projeto organizado ajuda a impulsionar a criatividade

Certificamo-nos de que fluxos de trabalho eficientes foram utilizados para fortalecer a UI. Aqui estão algumas recomendações para manter o projeto bem organizado:

  • Convenções de nomenclatura consistentes: É importante adotar convenções de nomenclatura que estejam alinhadas com seus elementos visuais e folhas de estilo. Convenções de nomenclatura claras não apenas mantêm a organização da hierarquia no UI Builder, mas também tornam mais acessível para seus colegas de equipe, e mantêm o código limpo e legível. Mais especificamente, sugerimos a convenção de nomenclatura Block Element Modifier (BEM) para elementos visuais e folhas de estilo. Apenas de relance, a nomenclatura BEM de um elemento pode te dizer o que ele faz, como aparece e como se relaciona com os outros elementos ao seu redor. Veja os seguintes exemplos de nomenclatura BEM:
Projeto de demonstração do UI Toolkit, Dragon Crashers, convenção de nomenclatura sugerida
Convenção de nomenclatura sugerida
  • Layout de UI responsivo: Semelhante às tecnologias da web, o UI Toolkit oferece a possibilidade de criar layouts onde os elementos visuais "filhos" se adaptam ao tamanho disponível atual dentro de seus elementos visuais "pais", e outros onde cada elemento tem uma posição absoluta ancorada a um ponto de referência, semelhante ao sistema de UI do Unity. O exemplo utiliza ambas as opções conforme necessário através dos elementos visuais da UI.
Captura de layouts futuros a serem disponibilizados no e-book do UI Toolkit.
O e-book apresenta os essenciais para layouts mais responsivos, entre outros recursos disponíveis no UI Builder.
  • Importador de PSD: Uma das ferramentas mais eficazes para criar a demonstração, o Importador de PSD permite que os artistas trabalhem em um documento mestre sem precisar exportar manualmente cada sprite separadamente. Quando mudanças são necessárias, elas podem ser feitas no arquivo PSD original e atualizadas automaticamente no Unity.
  • ScriptableObjects: Para se concentrar no design e implementação da UI, o projeto de exemplo simula dados de backend, como compras dentro do aplicativo e mensagens de e-mail, usando ScriptableObjects. Você pode personalizar convenientemente esses dados substitutos da pasta Resources/GameData e usar o exemplo para criar ativos de dados semelhantes, como itens de inventário e dados de personagens ou diálogos no UI Toolkit.
Um arquivo PSD contendo os ícones mostrados na visualização do Projeto desdobra todos os sprites dentro do arquivo que podem ser usados como sprites 2D em qualquer outro sistema do Unity.
Um arquivo PSD contendo os ícones mostrados na visualização do Projeto desdobra todos os sprites dentro do arquivo que podem ser usados como sprites 2D em qualquer outro sistema do Unity.

Lembre-se de que com o UI Toolkit, layouts e estilos de UI estão desacoplados do código. Isso significa que reescrever os dados de backend pode ocorrer independentemente do design da UI. Se sua equipe de desenvolvimento substituir esses sistemas, a interface deve continuar funcionando.

Ferramentas adicionais usadas na demonstração incluem sistemas de partículas criados com o Sistema de Partículas Integrado para efeitos especiais, e o conjunto de ferramentas 2D, entre outros. Sinta-se à vontade para revisar o projeto via o Inspetor para ver como esses diferentes elementos entram em ação.

Você pode encontrar arte de referência feita pelos artistas de UI em UI/Reference, conforme replicado no UI Builder. Todo o processo, desde maquetes até wireframes, também está documentado no e-book. Finalmente, todo o conteúdo do exemplo pode ser adicionado ao seu próprio projeto Unity.

Wireframes iniciais do exemplo do UI Toolkit
Wireframes iniciais do exemplo do UI Toolkit
Baixe o projeto de exemplo e prepare-se para o próximo e-book

Você pode baixar o exemplo do UI Toolkit – Dragon Crashers da Asset Store. Depois de explorar seus diferentes designs de UI, por favor, forneça seu feedback no fórum.

Então, não deixe de conferir nosso e-book, Design e implementação de interface do usuário no Unity. Download