Computer Graphics and Interfaces
Objectives
Knowledge
- To describe the graphics pipeline and to identify their implications.
- To list and describe the basic techniques for modelling based on polygons and attributes of vertices.
- To know the illumination models and shading techniques designed for graphics systems based on polygon''s rasterization.
- To identify the basic principles in building the user interface.
Application
- The student should be able to use a modern API to create a graphical application that can be integrated with applications from any other kind.
- The student should manage to translate the principles of design of a GUI into an efficient implementation and actual applicability.
Soft-Skills
- Ability for modelling and abstraction.
- Theoretical assessment of the efficiency of a solution.
- Drafting and following an experimental protocol for evaluation of a solution.
General characterization
Code
8150
Credits
6.0
Responsible teacher
Fernando Pedro Reino da Silva Birra, Nuno Manuel Robalo Correia
Hours
Weekly - 5
Total - 67
Teaching language
Português
Prerequisites
Good programming skills in one of the following languages: Javascript, C/C++ or Java
Basic knowledge of linear algebra and geometry
Bibliography
Edward Angel and Dave Shreiner, "Interactive Computer Graphics, A Top-Down Approach with WebGL", Seventh Edition, Addison-Wesley 2015
João M. Pereira, João Brisson, António Coelho, Alfredo Ferreira e Mário Rui Gomes, "Introdução à Computação Gráfica", FCA Editora, 2018
John F. Hughes, Andries van Dam, Morgan McGuire, David Sklar, James D. Foley, Steven K. Feiner, Kurt Akeley, "Computer Graphics: Principles and Practice", 3rd Edition, Addison-Wesley Professional (2013)
Edward Angel and Dave Shreiner, "Interactive Computer Graphics, A Top-Down Approach with WebGL", Seventh Edition, Addison-Wesley 2015
J.D. Foley, A. van Dam, S.K. Feiner, J.F. Hughes, "Computer Graphics - Principles and Practice", 2nd edition in C, Addison-Wesley (1996)
Alan Dix, Janet Finlay, Gregory Abowd, Russell Beale, "Human-Computer Interaction", 3rd edition, Prentice Hall (2004)
Teaching method
O ensino é baseado em aulas teóricas mas com uma forte ligação a uma componente experimental de laboratório onde os conceitos apreendidos são aplicados em variados programas. Nas aulas teóricas são ainda usados programas ilustrativos de concretização da matéria. Os conceitos são comunicados numa abordagem top-down que parte das aplicações de exemplo e desce até à implementação dos sistemas gráficos e dos algoritmos que os suportam.
Evaluation method
Evaluation method in 2019/2020
Each of the three projects has a weight of 10% in the final grade. During the continuous evaluation period, there are two written tests, each with a weight of 35%.
To pass, the final grade needs to be at least 9.5 (out of 20) and the mean grade of the two written tests is 8.0. Final grades are rounded to the unit.
During the final examination season, the written exam replaces the two written tests.
Scores achieved in the projects of the last two lective years are valid in a all or nothing setting. It is not possible to improve individual project grades.
Subject matter
- Modeling:
- Primitives
- Surfaces
- Scene graphs
- Geometric projections:
- Parallel
- Perspective
- Other essential transformations in the graphics pipeline:
- Window-viewport transformation
- Clipping
- HLHSR
- Event-driven programming
- Computer animation in real time
- Introduction to color models and illumination models
- Generation and application of texture mapping:
- Digital images
- procedural methods
- Interaction:
- Models
- Styles
- Screen design
- Contexts
- User interface techniques:
- 2D/3D metaphors
- Physical devices
- Control
- Feedback
- Visualization
- Navigation and manipulation
- WebGL Programming
Programs
Programs where the course is taught: