-
Apresentação
Apresentação
Esta unidade curricular extende os conhecimentos previamente obtidos na área da programação para o desenvolvimento de comportamentos específicos, componentes ou conteúdos com base na linguagem C#. No final desta unidade curricular o estudante deverá ser capaz de implementar scripts em Unity com base na linguagem C#, permitindo-lhe implementar funcionalidades e mecânicas de jogo simples.
-
Disciplina do curso
Disciplina do curso
-
Grau | Semestres | ECTS
Grau | Semestres | ECTS
Licenciado | Semestral | 3
-
Ano | Natureza | Lingua
Ano | Natureza | Lingua
2 | Obrigatório | Português
-
Código
Código
ULP2533-898
-
Pré-requisitos e co-requisitos
Pré-requisitos e co-requisitos
Não aplicável
-
Estágio Profissional
Estágio Profissional
Não
-
Conteúdos Programáticos
Conteúdos Programáticos
Apresentação de Unity3D e Visual Studio como ambientes de desenvolvimento; C# como linguagem de scripting; Eventos da classe MonoBehaviour (ex: Start/Awake, Update e FixedUpdate); Ordem de execução de eventos em scripts de Unity; Conceitos base de Algoritmia e de Design Patterns; Threads e Coroutines; Criação de Components; Elementos de Graphical User Intefaces; Transições de Scenes; Raycasting e Física; Dispositivos de Entrada (Teclados, Gamepads, Rato, Camera); Inspectors; Técnicas de Debugging e Gestão de Memória; Implementação de mecânicas de jogo simples em C#; Aulas previamente agendadas serão lecionadas à distância, promovendo o aprofundamento da capacidade de trabalho autónomo dos estudantes.
-
Objetivos
Objetivos
O estudante deverá conhecer os eventos pré-definidos numa aplicação baseada em Unity, e deverá decidir a quais deve recorrer para implementar as funcionalidades desejadas. O estudante deverá também dominar os métodos de programação assincrona e paralela com threads e corotinas, assim como conhecer as suas vantagens e limitações. Deverá também ser capaz de implementar novos componentes e expor algumas variáveis na janela de inspector, dando uso às funcionalidades já disponibilizadas pelo motor. Deverá também ser capaz de implementar transições entre estados e mapas de jogo para criar uma experiencia final coesa. Adicionalmente, alguns conceitos especificos de programação recorrendo a uma linguagem orientada a objectos (neste caso C#) também deverão ser assimilados (ex.: Herança, Polimorfismo).
-
Metodologias de ensino e avaliação
Metodologias de ensino e avaliação
Project based learning
-
Bibliografia principal
Bibliografia principal
Hocking, Joe - Unity in Action, Second Edition: Multiplatform Game Development in C#. ISBN-10: 1617294969
-
Horário de Atendimento
Horário de Atendimento
-
Mobilidade
Mobilidade
Não