-
Apresentação
Apresentação
Pretende-se que os estudantes adquiram conhecimentos básicos sobre matemática e física, primariamente como ferramentas para a criação de jogos. Nesta UC, os estudantes irão aprender conceitos de trigonometria, cálculo vectorial, cálculo matricial, sistemas de coordenadas, probabilidades e estatística, cálculo numérico, funções paramétricas e sobre primitivas geométricas. Também serão introduzidos a conceitos mais práticos de matemática com aplicação a jogos (por exemplo: poderá ser utilizado o Python com as bibliotecas NumPy e Pygame para desenvolvimento de um motor de renderização 3d rudimentar, ou outras linguagens de programação).
-
Disciplina do curso
Disciplina do curso
-
Grau | Semestres | ECTS
Grau | Semestres | ECTS
Licenciado | Semestral | 4
-
Ano | Natureza | Lingua
Ano | Natureza | Lingua
1 | Obrigatório | Português
-
Código
Código
ULHT1075-17337
-
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
Sistemas de coordenadas cartesianas e bases de trigonometria. Vectores: definição, propriedades, operações. Múltiplos espaços de coordenadas: utilidade prática, exemplos, transformações. Matrizes: definição e interpretação geométrica, determinantes, inversa; matrizes homogéneas. Transformações lineares: rotação, escalamento, projecção ; Hierarquias e combinação de transformações Rotação em 3D: forma matricial, ângulos de Euler e quaterniões. Probabilidades e distribuições matemáticas Funções paramétricas Primitivas geométricas Matemática para gráficos 3d Exemplos em NumPy e Pygame, outra linguagem de programação.
-
Objetivos
Objetivos
Ao concluir a unidade curricular, o aluno deve ter adquirido: Domínio de trigonometria e de sistemas de coordenadas. Domínio dos conceitos básicos de vector, matriz e transformações lineares. Domínio das diferentes primitivas geométricas. Domínio de conceitos básicos de probabilidades Domínio de conceitos funções paramétricas Domínio dos conceitos básicos de visualização em 3D, malhas de polígonos, e de como é implementado um pipeline clássico de renderização. Capacidade de resolver problemas envolvendo a visualização, interpretação, manipulação e implementação de mundos virtuais 2D e 3D, tanto em papel como ao nível programação em Python (por exemplo).
-
Metodologias de ensino e avaliação
Metodologias de ensino e avaliação
Nas aulas serão utilizadas práticas pedagógicas utilizando o peer-review com o socrative software (exemplo), como também, PBL (problem-based learning).
-
Bibliografia principal
Bibliografia principal
Dunn, F., & Parberry, I. (2011). 3D Math Primer for Graphics and Game Development (2nd ed.). CRC Press. Craven, P. (2016). Program Arcade Games: With Python and Pygame. Apress. Brownlee, J. (2018). Basics of Linear Algebra for Machine Learning: Discover the Mathematical Language of Data in Python. Self-published. Inva¿lido para
-
Horário de Atendimento
Horário de Atendimento
-
Mobilidade
Mobilidade
Não