Computação Gráfica::Criando sua Primeira Aplicação em Unity3D em Linux

Breve Guia para sua Primeira Aplicação em Unity3D

Antes de Começar: Alguns Tutoriais

  1. Invoque Unity3D a partir do ícone no lançador ou procurando pela aplicação na janela de procura do lançador, digitando “Unity” com “U” maiúsculo:

    unity3
  2. Faça o tutorial ultrabásico para um joguinho 2D para aprender a estrutura geral de Unity e a sintaxe de C#: Coding in Unity for the Absolute Beginner

    unity-tutorial1
    Este tutorial tem muitos exemplos de código que vão ajudar você a entender a estrutura geral de um programa em um Game Engine
  3. Agora comece a programar a sério e vá para 3D: Faça o Roll-a-Ball Tutorial

    unity-tutorial2
    Abriu o Roll-a-Ball? Veja a seção adiante, então.

Seu Primeiro Jogo em Unity

Nesta seção vamos estender o jogo Roll-a-Ball para você aprender algumas coisas a mais em Unity.

O que eu preciso ter aprendido no Roll-a-Ball?

Estrutura Geral de um Programa em Unity

Do mesmo jeito que em OpenGL ou em outras APIs gráficas, Unity também segue a filosofia bipartite de:

  • Definição de Classes e Comportamentos Individuais e
  • Loop infinito de atualização.

O loop infinito de atualização do jogo é quem dá a “vida” ao jogo: tudo o que estiver dentro dele é invocado repetidamente pela game engine (junto com as coisas que a engine faz internamente para atualizar o seu vídeo). Quem define o que será feito no loop infinito de atualização do jogo são dois métodos:

  • update das classes principais de seus objetos de jogo.  Essa classes serão subclasses da classe MonoBehavior definida na API de Unity. Quando você cria um novo ator de jogo em Unity, ao criar seu código principal, é criado automaticamente  um esqueleto de classe como uma subclasse de MonoBehavior e esta já tem pré-defrinido o esqueleto do método update, que sobrescreve o método update abstrato de MonoBehavior.
  • lateUpdate das classes principais de seus objetos de jogo.   Esse métdo é invocada para cada ator do jogo depois que todos os update de todos os atores são invocados. Se você necessita que uma coisa aconteça depois que a ação principal do jogo (relaizada em update) aconteça, como por exemplo mostrar o que aconteceu depois de uma colisão (veja o exemplo dado por Unity3D no Roll-a-Ball)

Estendendo o Roll-a-Ball com um Personagem Animado

Vamos pegar o seu Roll-a-Ball e subtituir a bolla caça-cubos por um boneco Pokèmon?

Faça os seguintes tutoriais, se você ainda não fez:

Descobriu como carregar um Pokèmon no Unity? Vamos então carregá-lo na sua versão do Roll-a-Ball?

 

Links Úteis

unity14

Sobre o Autor

possui graduação em Ciências da Computação pela Universidade Federal de Santa Catarina (1989) e Doutorado Acadêmico (Dr. rer.nat.) em Ciências da Computação pela Universidade de Kaiserslautern (1996). Atualmente é professor Titular da Universidade Federal de Santa Catarina, onde é professor do Programa de Pós-graduação em Ciência da Computação e dos cursos de graduação em Ciências da Computação e Sistemas de Informação. Tem experiência nas áreas de Informática em Saúde, Processamento e Análise de Imagens e Engenharia Biomédica, com ênfase em Telemedicina, Telerradiologia, Sistemas de Auxílio ao Diagnóstico por Imagem e Processamento de Imagens Médicas, com foco nos seguintes temas: analise inteligente de imagens, DICOM, CBIR, informática médica, visão computacional e PACS. Coordena o Instituto Nacional de Ciência e Tecnologia para Convergência Digital - INCoD. Foi o criador e primeiro Coordenador do Núcleo de Telessaúde de Santa Catarina no âmbito do Programa Telessaúde Brasil do Ministério da Saúde e da OPAS - Organização Pan-Americana de Saúde e criador do Núcleo Santa Catarina da RUTE - Rede Universitária de Telemedicina.