Disciplinas
Inteligência Artificial para Jogos
Reconhecer as diferenças entre a IA tradicional e aplicação de técnicas de IA ao desenvolvimento de Jogos de Computador, onde outros factores como a jogabilidade são mais importantes que a inteligência do adversário. Conhecer os problemas práticos do desenvolvimento de IA para Jogos de Computador, bem como as diferentes vertentes das técnicas aplicadas em Jogos de Computador comerciais. Saber desenhar e construir um sistema de IA para um jogo de computador, qualquer que seja o seu estilo: acção, desporto, estratégia, narrativa, etc.
Agentes Autónomos e Sistemas Multi-Agente
Adquirir noções gerais de agentes e sistemas multi-agente; saber identificar e classificar agentes e ambientes, de acordo com diferentes propriedades. Saber desenvolver sistemas complexos e de diferentes áreas de aplicação, usando uma metodologia orientada a agentes. Saber especificar uma sociedade de agentes para a resolução de um problema concreto. Ter a capacidade de conceber agentes com arquiteturas reativas, deliberativas e híbridas. Ter a capacidade de criar sociedades de agentes que comunicam, de uma forma prática, usando linguagens e plataformas adequadas.
Computação Gráfica para Jogos
Computação gráfica para jogos cobre aspetos teóricos e práticos do desenvolvimento de motores gráficos para videojogos (game engines). Aborda os diferentes subsistemas presentes num motor de jogo, incluindo, entre outros, subsistemas de rasterização, animação de personagens, e físicos, e discute a articulação necessária entre os vários subsistemas para suportar o desenvolvimento de jogabilidade. Após a frequência desta disciplina, os alunos deverão compreender como funciona um motor gráfico moderno e serem capazes de desenvolver os seus próprios motores gráficos para jogos.
Design de Jogos
Esta disciplina permite ao aluno adquirir capacidades para concepção de uma experiência de jogo e desenvolvimento de protótipos que realizem essa experiência. As capacidades são desenvolvidas fomentando a discussão sobre o que é um jogo, quais são os seus constituintes e qual a relação do jogo com os seus jogadores (tendo em conta as suas diferenças). O aluno desenvolve o seu trabalho com base em documentos de design e construção de protótipos.
Metodologia de Desenvolvimento de Jogos
Dar ao alunos uma visão geral das diferentes metodologias e tecnologias envolvida no desenvolvimento de videojogos discutindo as principais questões de cada uma delas. Dotar os alunos de ferramentas e técnicas para desenvolver interfaces de videojogos tendo especial atenção aos modos de controlo usados. Dotar os alunos de capacidade de reflecção sobre a jogabilidade e a experiência do jogador seguindo uma perspectiva de modelação conceptual juntamente com uma perspectiva empírica de realização de testes com jogadores. Salientar processos de exploração da experiência na perspectiva do jogador.
Produção de Conteúdos Multimédia
Conhecer os vários tipos de informação multimédia e como os manipular para a produção de conteúdos. Reconhecer as características de um processo de Produção de Conteúdos Multimédia. Entender os constrangimentos tecnológicos que se colocam na Produção, nomeadamente nos aspetos de captura, codificação, processamento e visualização dos vários media. Conhecer os vários tipos de ferramentas de autoria disponíveis. Produzir conteúdos Multimédia; Conhecer os vários contextos em que o multimédia por ser consumido, com ênfase em aspectos de rede (requisitos de largura de banda, tempo de latência, sincronização, etc.) e dispositivos móveis. Introduzir algumas formas avançadas de utilização de multimédia como a modelação procedimental, arte generativa e realidade aumentada. Aplicar métodos eficientes de pesquisa de informação multimédia baseada no conteúdo.
Teses
A Natural Language capable agent to play a Werewolf or Mafia Game
O processamento de Língua Natural é uma área complexa de engenharia informática. Nos últimos anos, a Lígua Natural começou a ter mais interacção com a área de Jogos e foi estabelecida em conjunto com o reconhecimento de fala. Esta tese de Dissertação de mestrado abrange a teoria de um agente inteligente artificial capaz de jogar o Jogo Lobisomem ou Mafia, com uma interação mais natural com os jogadores humanos, usando técnicas de processamento de Língua Natural e Teoria de Probabilidade. Apresentamos nossa solução para criar esse agente, onde tomamos partido das redes bayesianas, do algoritmo de eliminação variável, de um agente conversacional incorporado e de medidas de similaridade.
My Army: Strategy game engine
O presente documento aborda todo o processo necessário para se refazer o atual motor de jogo do “My Army”, para isso foi efetuada uma análise detalhada de forma a se verificar o estado do mesmo, o funcionamento do respetivo simulador de batalhas, bem como uma análise entre a linguagem do atual simulador e a nova linguagem selecionada para se compreender a capacidade de cada uma destas solucionar os problemas existentes. De seguida, apresenta-se uma possível solução para se resolverem estes problemas, tendo em conta toda a verificação anteriormente efetuada. Após várias semanas de desenvolvimento e de correção de problemas, a nova versão do simulador ficou concluída, porém ainda foi alvo de uma nova análise para se inserir paralelismo de modo a melhorar o seu desempenho. Após várias tentativas, chegou-se à solução paralela que oferecia maior segurança e com uma melhoria significativa no desempenho. Por fim, todas as versões do simulador de batalhas foram testadas utilizando-se vários exemplos de batalhas retirados do jogo para se realizar uma análise comparativa e assim demonstrar-se o desempenho de cada uma delas.