Pré-requisitos

  • INF213: Estrutura de dados

    É esperado que os alunos estejam confortáveis com programação orientada a objetos em C++ e que conheçam estruturas de dados fundamentais, bem como os algoritmos clássicos associados à elas.

Conteúdo Programático

  1. Introdução

    Visão geral do desenvolvimento de jogos; história, mercado e tecnologias; o laço principal do jogo; eventos de entrada; modelagem de objetos de jogo; síntese de imagens.

  2. Álgebra Linear

    Operações básicas de vetores e matrizes; sistemas de coordenadas; transformações geométricas; quarternions.

  3. Física

    Mecânica linear para movimentação de objetos rígidos; geometrias de colisão; detecção de colisão; estruturas de dados para otimização de simulações físicas.

  4. Gráficos 2D

    Sprites; spritesheets; animações 2D; câmeras 2D; tilemaps; camadas.

  5. Inteligência Articifial

    Controle reativo; máquina de estados finitos; comportamentos de navegação; planejamento de caminhos (pathfinding).

  6. Interface com o Usuário

    Sistemas de menus; janelas de diálogo; heads-up display.

  7. Áudio

    Processamento digital de áudio; sintetizadores; efeitos e mixagem; áudio 3D; áudio adaptativo; middlewares de aúdio.

  8. Gráficos 3D

    Pipeline gráfico; modelos 3D; câmeras; iluminação e sombreamento; visibilidade.