Computer Graphics
2023/2024, 1st Semester, Fall
14350 - Engenharia Informática
Notas finais de frequência e exame da PL1
Notas finais de frequência e exame da PL2
Notas finais de frequência e exame da PL3
Professor Abel J.P: Gomes
Department of Computer Science, University of Beira Interior
Rua Marquês de Ávila e Bolama, 6201-001 Covilhã, Portugal
E-mail: agomes(at)di.ubi.pt or mosqueteer(at)gmail.com
Lithography by Edward Hopper (on the right-hand side)
Goals and Objectives
The general objectives of this course unit are:Regarding the specific objectives of this course unit, after the learning process, students should be able at least to:
- Provide students with programming and rapid prototyping skills of 2D and 3D graphics applications based on a graphic system (e.g., modern OpenGL) and a window system.
- Provide students with the basic skills in programming and geometric modeling of synthetic scenes on computer.
- Provide the students with the essential skills in the generation of images of synthetic scenes in computer, which requires the understanding of the phenomena and interactions between light and the environment that lead to the formation of color.
- Provide students with mathematical skills behind fundamental methods, techniques and algorithms in computer graphics.
- Provide students with the core competencies in event-based programming.
- Develop and code an interactive graphical application in OpenGL/GLEW/GLFW/GLM.
- Model and code a 3D scene through triangle meshes.
- Schedule 3D scene lighting.
- Program the application of textures to geometric models.
- Develop and code a "ray caster".
Bibliography
- João Madeiras Pereira, João Brisson, António Coelho, Alfredo Ferreira, and Mário Rui Gomes. Introdução à Computação Gráfica. FCA, 2018.
- J. Foley, A. van Dam, S. Feiner, J. Hughes. Computer Graphics: Principles and Practice (2nd edition in C). Addison-Wesley Publ. Company, 1996.
- D. Salomon. Computer Graphics and Geometric Modeling. Springer-Verlag, 1999.
- J. Gomes e L. Velho. Image Processing for Computer Graphics. Springer-Verlag, 1997.
- R. Wright Jr. e M. Sweet. OpenGL SuperBible. Waite Group Press, 2000.
- D. Schreiner, M. Woo, J. Neider e T. Davis. OpenGL Programming Guide. Addison-Wesley Publ. Company, 2003.
- D. Schreiner. OpenGL Reference Manual.. Addison-Wesley Professional, 2004.
Assignments Projects Installing OpenGL 3.0+ Libraries
- A01 : Assignment #1: Plotting 2D parametric curves.
- A02 : Assignment #2: Loading and rendering 2D meshes.
- A03 : Assignment #3: A brief description
- PJ1 : Labirinto: Maze
- --- : Github code for Maze
- --- : Another github code for Maze
- PJ2 : Sistema Solar: Solar System
- --- : Github code for Solar System
- PJ3 : Asteróides: Asteroids
- --- : Github code for Asteroids
- PJ4 : Tetris
- --- : Github code for Tetris3D
- PJ5 : Molecular Render from PDB Files
- Windows : Install Modern OpenGL on Windows
- Mac OSX : Install Modern OpenGL on Mac OS
- Linux : Install Modern OpenGL on Linux
- More tips : More tips about installing modern OpenGL
Assessment
General Assessment Rules:Deadlines:
- A avaliação será ao longo do semestre.
- 1º trabalho de programação gráfica: 3.0 valores (inclui 1.0 valor para perguntas e respostas dos alunos).
- 2º trabalho de programação gráfica: 3.5 valores (inclui 1.0 valor para perguntas e respostas dos alunos).
- 3º trabalho de programação gráfica: 3.5 valores (inclui 1.0 valor para perguntas e respostas dos alunos).
- Projeto (equipas de 4 alunos no máximo): 10.0 valores.
Project Assessment:
- A avaliação será ao longo do semestre.
- 1º trabalho de programação gráfica: o dia anterior à aula PL da 3ª semana de outubro, pelas 23:59.
- 2º trabalho de programação gráfica: o dia anterior à aula PL da 2ª semana de novembro, pelas 23:59.
- 3º trabalho de programação gráfica: o dia anterior à aula PL da 1ª semana de dezembro, pelas 23:59.
- Projeto: o dia anterior à última aula PL do semestre, pelas 23:59.
Admissão a exame:
- Enunciados entregues na segunda semana de aulas.
- O projecto é em grupo, mas a avaliação é individual.
- As defesas do projecto decorrerão nas aulas da penúltima e última semanas do 1º semestre.
- Não serão aceites projectos para além do prazo.
- O projecto carece de relatório final escrito em Latex.
- O relatório final do projecto vale 2.5 valores em 10.0 (veja-se formato em Latex Report Template ).
- O projecto é entregue em ficheiro .zip (usando o email ou qualquer serviço de transferência de ficheiros como, por exemplo, o wetransfer), incluindo o relatório final do projecto.
- Cada relatório deverá incluir as tarefas (e sua autoria) concluídas por cada aluno.
- O projecto carece de apresentação final com a presença de todos os alunos da equipa de projeto.
- O projecto desenvolve-se em 3 fases (com avaliação em cada fase):
- --- 1ª fase: aula PL da primeira semana de novembro de 2023;
- --- 2ª fase: aula PL da primeira semana de dezembro de 2023;
- --- 3ª fase: última aula PL do semestre.
- Todos os alunos estarão admitidos a exame.
- O exame consistirá de 3 novos trabalhos práticos e de 1 projeto.
Last update: January 30, 2024.