Computação Gráfica e Interfaces
Objetivos
Saber
- Descrever o pipeline gráfico e identificar as respetivas implicações.
- Enumerar e descrever as técnicas básicas para modelação baseada em polígonos e atributos de vértices.
- Conhecer os modelos de iluminação e técnicas de sombreamento para sistemas gráficos baseados em rasterização de polígonos.
- Identificar os princípios de base na construção da interface com o utilizador.
Saber Fazer
- O aluno deverá ser capaz de usar uma API moderna para criar uma aplicação gráfica que possa ser integrada com aplicações de qualquer outro tipo.
- O aluno conseguirá traduzir os princípios de conceção duma interface gráfica com o utilizador numa implementação eficiente e com aplicabilidade real.
Competências Complementares
- Capacidade de modelação e abstração.
- Avaliação teórica da eficiência de uma solução.
- Elaboração e seguimento de um protocolo experimental para avaliação de uma solução.
Caracterização geral
Código
8150
Créditos
6.0
Professor responsável
Fernando Pedro Reino da Silva Birra, Nuno Manuel Robalo Correia
Horas
Semanais - 5
Totais - 67
Idioma de ensino
Português
Pré-requisitos
Bons conhecimentos de programação numa das seguintes linguagens: Javascript, C/C++ ou Java
Conhecimentos básicos de álgebra linear e de geometria
Bibliografia
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)
Método de ensino
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.
Método de avaliação
Componentes da Avaliação
A avaliação é constituída por duas componentes: a componente laboratorial e a componente teórico-prática.
Componente Laboratorial e Frequência
A componente laboratorial é composta por três trabalhos, realizados em grupo de dois alunos dum mesmo turno prático. Os trabalhos, classificados no intervalo de 0 a 20 valores, serão discutidos individualmente. A nota de um aluno num trabalho depende do trabalho que entregou (realizado em grupo), do seu desempenho na discussão e do desempenho do seu colega de grupo na discussão, caso os desempenhos de ambos sejam significativamente desequilibrados.
A nota da componente laboratorial (CompL) é a média das notas do aluno nos três trabalhos (P1, P2 e P3):
Para obter frequência, é necessário reunir as seguintes condições:
- frequentar um mínimo de 50% das aulas do seu turno
- CompL >= 9.5 .
As discussões dos trabalhos serão efetuadas no fim do semestre, apenas com os alunos que puderem ter frequência.
Componente Teórico-Prática
A componente teórico-prática é composta por dois testes (no período de aulas) ou por um exame (na Época de Recurso). As três provas são individuais, escritas e sem consulta. Não são permitidos dispositivos eletrónicos (e.g. calculadoras, telemóveis, smartwatches e portáteis).
Há pré-inscrição nos testes.
A nota da componente teórico-prática (CompTP) é a média aritmética simples das notas dos testes (T1 e T2) ou a nota do exame (Ex):
Para obter aprovação, é necessário que CompTP >= 8.0 .
Nota Final
A nota final (F) dos alunos com frequência é:
- F = CompTP, se CompTP < 8.0;
- F = 0.3 CompL + 0.7 CompTP, se CompTP >= 8.0 .
Todas as notas (P1, P2, P3, T1, T2, Ex, CompL e CompTP) são arredondadas às décimas, exceto a nota final (F) que é arredondada às unidades.
Classificações da Componente Laboratorial Obtidas em 2018/19 ou 2019/20
Sendo a primeira vez que a unidade curricular tem frequência, decidiu-se atribuir frequência, de forma automática, aos alunos que tenham obtido nota na componente laboratorial nos anos letivos 2018/19 ou 2019/20 não inferior a 9.5 .
Os alunos com uma classificação da componente laboratorial inferior a 9,5, obtida nestes anos letivos, poderão ainda assim manter a sua nota, desde que manifestem essa vontade ao regente.
Classificações da Componente Laboratorial Obtidas em outros anos
Todas as notas da componente laboratorial perdem a validade e os alunos terão que realizar todas as componentes de avaliação.
Conteúdo
- Modelação
- Primitivas
- Grafos de cena
- Projeções Geométricas
- Paralela
- Perspetiva
- Outras transformações essenciais no pipeline gráfico
- Enquadramento janela-visor
- Recorte
- Remoção de partes ocultas
- Programação por eventos
- Animação gráfica em tempo real
- Introdução aos modelos de cor e de iluminação
- Geração e aplicação de texturas por mapeamento:
- Imagens digitais
- métodos procedimentais
- Interação
- Modelos
- Estilos
- Design do ecrã
- Contextos
- Técnicas de interface com o utilizador
- Metáforas 2D/3D
- Dispositivos físicos
- Controlo
- Feedback
- Visualização
- Navegação e manipulação
- Programação em WebGL
Cursos
Cursos onde a unidade curricular é leccionada: