Aulas
Essa disciplina tem uma carga horária teórica de 2 horas semanais, para que os alunos sejam expostos aos conceitos que serão utilizados ao longo do projeto prático daquela semana.
-
A1: Introdução
Logística da disciplina e visão geral do desenvolvimento de jogos digitais: história, mercado e tecnologias.
[slides]
Leituras Sugeridas:
- Game Programming Algorithms and Techniques, Cap. 1: Game Programming Overview, Sec. 1
-
A2: Game Loop e Modelagem de Objetos
Técnicas de controle de tempo de CPU e modelagem de objetos do jogo.
[slides] [vídeo]
Leituras Sugeridas:
- Game Programming Algorithms and Techniques, Cap. 1: Game Programming Overview, Secs. 2-4
- Game Programming Patterns, Cap. 9: Game Loop
-
A3: Álgebra Linear
Álgebra linear para computação gráfica e jogos digitais.
[slides] [vídeo 1] [vídeo 2]
Leituras Sugeridas:
- Game Programming Algorithms and Techniques, Cap. 3: Linear Algebra for Games
- The Nature of Code, Cap. 1: Vectors
-
A4: Física - Objetos Rígidos
Mecânica linear para movimentação de objetos rígidos.
[slides]
Leituras Sugeridas:
- Game Programming Algorithms and Techniques, Cap. 7: Physics, Sec. 4
- The Nature of Code, Cap. 2: Forces
-
A5: Física - Detecção de Colisão
Geometrias de colisão e estruturas de dados para simulação física.
[slides]
Leituras Sugeridas:
- Game Programming Algorithms and Techniques, Cap. 7: Physics, Secs. 2-3
-
A6: Gráficos 2D
Utilizando texturas para representar objetos 2D estáticos/animados e compor cenas com múltiplas camadas.
[slides]
Leituras Sugeridas:
- Game Programming Algorithms and Techniques, Cap. 2: 2D Graphics
-
-
A8: IA - Máquina de Estados Finita
Máquina de estados finita para modelagem de comportamentos de personagens não controlados por jogador.
[slides]
Leituras Sugeridas:
- Game Programming Algorithms and Techniques, Cap. 9, Págs. 192-198
- Artificial Intelligence for Games, Cap. 5, Pags. 309-370
-
A9: Gerenciamento de Cenas e Dados de Jogo
Técnicas para representação, edição e gerenciamento de dados de jogo (e.g., configurações, levels, personagens, etc). -
A10: IA - Pathfinding
Encontrando caminhos mínimos para navegação inteligente.
[slides]
Leituras Sugeridas:
- Game Programming Algorithms and Techniques, Cap. 9, Págs. 180-192
- Artificial Intelligence for Games, Cap. 4, Pags. 197-251
-
A11: IA - Comportamentos de Navegação
Movimentando NPCs de maneira orgânica.
[slides] [demos]
Leituras Sugeridas:
- Artificial Intelligence for Games, Cap. 3, Pags. 39-95
- The Nature of Code, Cap. 6
-
A12: Interface com o Usuário
Sistemas de menus, janelas de diálogo e heads-up display. -
A13: Áudio
Processamento digital de audio. -
A14: Gráficos 3D - Pipeline Gráfico
Renderizando modelos 3D com o pipeline gráfico da OpenGL. -
A15: Gráficos 3D - Shaders
Introdução aos shaders de vértice e fragmento. -
A16: Engines
Visão geral das arquiteuras das engines modernas. -
A17: Conclusão
Revisão dos tópicos vistos na disciplina e discussão sobre como se tornar um desenvolvedor de jogos.