Disciplina Sistemas de Redes para Jogos

  • Apresentação

    Apresentação

    Nos últimos anos, os jogos online têm sido dos mais lucrativos na indústria de jogos. Como tal, a unidade curricular de Sistemas de Rede para Jogos existe para dar aos alunos as ferramentas para poderem compreender os desafios à sua frente nesta área, além de lhes permitir tomar as melhores decisões sob o ponto de vista técnico.

    Também vai ajudá-los a compreender alguns detalhes sobre sistemas operativos como multithreading e sincronização. Também existe uma componente prática para melhor compreenderem como poderiam implementar algumas das técnicas apresentadas.

  • Conteúdos Programáticos

    Conteúdos Programáticos

    • Introdução
      • Programação concorrente e distribuída
        • Jogos multi-jogador online
    • Multithreading
      • Threads
      • Sincronização
      • Sistemas Produtor/Consumidor
    • Conceitos Básicos
      • IP, TCP and UDP
      • DNS
      • HTTP, SOAP and REST
      • Firewalls
      • Port-forwarding
      • Sockets
    • Modelos de sistemas de redes
      • Autoridade e propriedade
      • Modelo Cliente/Servidor
      • Modelo Descentralizado
    • Arquiteturas para jogos multi-jogador online
      • Representação de estado
      • Robustez
      • Replicação total
      • Passo-fixo determinístico
      • Sistemas baseados em rollback
    • Segurança
    • Servidores de dados de jogador
      • Abordagens
      • Bases de dados
      • Dados de jogadores
      • Emparelhamento de jogadores
      • Aquisição automática de dados
    • Jogos de rede em Unity
      • Considerações sobre jogos massivos online
      • Balanceadores de carga
      • Shards e sub-servidores
  • Objetivos

    Objetivos

    • Aprender os conceitos básicos de multithreading, sincronização, infraestruturas de redes e protocolos
    • Compreender a complexidade de jogos online multiplayer e ser capaz de conceber soluções para esses problemas
    • Conhecer as mais comuns arquiteturas usadas em videojogos online
    • Reconhecer a complexidade do desenvolvimento de jogos online massivos
    • Desenhar e implementar um jogo online multi-jogador, quer em arquitetura cliente/servidor ou descentralizado
  • Metodologias de ensino e avaliação

    Metodologias de ensino e avaliação

    A disciplina é teórico-prática, sendo a maior parte das aulas uma mistura dos dois métodos:

    * Expositivo na apresentação dos conceitos

    * Demonstrativos, na demonstração dos conceitos através de exemplos do mundo real, se possível

    * Práticos, na execução de pequenas tarefas de programação relacionadas com o conteúdo leccionado.

     

  • Bibliografia principal

    Bibliografia principal

    • Kurose, J. F., & Ross, K. (2009). Computer Networking: A Top-Down Approach Featuring the Internet, Pearson Education.

    • Stevens, W. R., & Narten, T. (1990). UNIX network programming. ACM SIGCOMM Computer Communication Review, 20(2), 8-9.

INSCRIÇÃO AVULSO
Política de Cookies
Este website utiliza cookies para lhe proporcionar uma melhor experiência de navegação.
Aceitar
Lisboa 2020 Portugal 2020 Small Logo EU small Logo PRR republica 150x50 Logo UE Financed Provedor do Estudante Livro de reclamaões Elogios filmeu