5 minute read

Implementação Unity

Next Article
Resultados

Resultados

Implementação na UNITY

61

Advertisement

O primeiro passo é criar um novo projeto a partir da plataforma Unity Hub

Para dar suporte à estética aplicada ao game, foi necessário utilizar a versão 2019.3.15, que dá suporte ao Universal Render Pipeline, aplicação que gera alto desempenho gráfi co ao projeto.

Seleção de templates da Unity Hub.

Aba Projetct da Unity. 62

PROCESSOS: IMPLEMENTAÇÃO NA UNITY

A extensa diversidade de arquivos com que a Unity trabalha torna imprescindível a organização dos mesmos. Descorre-se a seguir a orientação quanto ao conteúdo das pastas:

• 3D models: todas as modelagens desenvolvidas anteriormente no Blender, em formato fbx, além da subpasta colliders, com as malhas de colisão no mesmo formato, e por fi m a pasta Prebabs, com todos os GameObjects pré-confi gurados na própria

Unity;

• Materials: Todos os materiais defi nidios nos objetos do Blender são extraídos para edição e armazenados numa só pasta;

• Personagem: Ebu salvo a parte por ser um objeto mais complexo.

• Scenes: Armazena as cenas do game. Este projeto possui apenas uma, mas quando houver outras fases do jogo, elas serão somadas aqui;

• Scripts: todos os arquivos em C# que permite mover personagem, animar, gerar inputs e reações no game;

• Settings: Armazena o Universal Render Pipeline especial para o shade aplicado ao projeto;

• Shaders: shaders com diferentes propriedades e efeitos gráfi cos;

• Sounds: efeitos sonoros e música ambientes salvos em mp3;

• Sprites: artes em 2D como os controladores mobile e o logo do game;

• Starfi eld Skybox: arte de fundo baixado na Asset Store para efeito espacial;

63

Todos os objetos com mais de uma animação embutida no formato timeline precisam aqui ser nomeadas e dividas por frames, antes de transformadas em GameObjetcs. No caso de Ebu, essa etapa não é necessária por conta de sua animação em formato NLA. Aqui também se confi gura se as animações ocorrerão em loop.

Na aba Materials do Inpector, são extraídas todos os materiais de forma automática, para possibilitar edições e alterar o tipo de shader.

Diversas abas da Unity.

64

PROCESSOS: IMPLEMENTAÇÃO NA UNITY

Interface da Unity. O passo seguinte é montar a cena do game transferindo os objetos para a aba Hierarchy, transformando-os assim em GameObjects. É recomendado criar objetos vazios para cada GameObject, pois muitos deles entram em cena com seu centro de gravidade distantes de sua massa e isso difi culta rotações e escalas, por exemplo.

Também criei objetos nulos para receberem os mesh colliders (linhas amarelas em volta da árvore) desenhados anteriormente, pela mesma razão anterior. Estes colliders são parenteados ao objeto nulo pai e, por fi m, salvos na pasta Prefabs, para usos futuros ou replicação.

65

A confi guração padrão de shaders da Unity deixa as cores dos objetos pouco atrativas e sem vida, prejudicando a experiência. Para resolver essa questão, baixei e apliquei em cada material, um shader específi co disponibilizado gratuitamente, inclusive para uso comercial, chamado Zelda Toon (por se assemelhar aos gráfi cos presentes no game: Zelda Breath of the Wild, citado anteriomente).

Interface da Unity

66

PROCESSOS: IMPLEMENTAÇÃO NA UNITY

Aba Asset Store da Unity

Finalizando a parte gráfi ca do game, baixei gratuitamente da Unity Asset Store um Skybox (imagens de fundo que envolvem todo o cenário do jogo) de nome Starfi eld, para simular o espaço, onde o jogo se passa num primeiro momento. Essa imagem de fundo não está disponível para a versão em Realidade Aumentada.

Aba Animator da Unity 67

As animações de Ebu e do Portal, por serem diversas e acionadas em diferentes momentos com diferentes inputs, precisam do componente Animator, que gerencia as passagens de uma ação para outra e, por meio dos scripts de programação, são ativadas e desativadas.

68

Edição do script MoveJogador, no Visual Studio Code PROCESSOS: IMPLEMENTAÇÃO NA UNITY

Os scripts em C# foram escritos utilizando o programa gratuito Visual Studio Code, da Microsoft.

A parte de programação foi meu maior desafi o de implementação. Usei os códigos utilizados no curso, porém alguns deles caíram em desuso, já que as aulas foram produzidas utilizando o Unity 5 0, enquanto eu utilizei a versão mais recente, 2019 3 15. Também propus algumas atividades diferentes do jogo original como o Portal de acesso a próxima fase, o que no game do Felpudo acontece apenas pegando uma estrela. Inúmeros também foram os bugs inexplicáveis que se corrigiam por motivos desconhecidos, após dias de tentativas frustradas pesquisadas em fóruns e vídeo-aulas.

Outra adição foi a possibilidade de movimentar a câmera no sentido horizontal através do arrastar do mouse com o botão esquerdo pressionado, ou movimentação do dedo na tela, em smartphones,

Aqui confi gurei a exportação do game para PC e Android. No primeiro caso, o Unity gera uma pasta com alguns poucos arquivos, dentre eles um no formato .exe, que inicia o game. Para a versão em Android é gerado um arquivo único em formato .apk.

69

Aba Build Settings da Unity

This article is from: