Programa de Ensino 20122
Aprovado pelo Departamento em: 11-7-2012
- Identificação:
- Disciplina: INE5420 - Computação Gráfica
- Carga horária: 72 horas-aula
Teóricas: 36
Práticas: 36
- Período:
2º semestre de 2012 até a presente data
- Curso(s):
- Ciências da Computação (208)
- Matemática, Habilitação Bacharelado (222)
- Requisito(s):
- Ciências da Computação (208)
- INE5408 - Estruturas de Dados
- MTM3120 - Cálculo 2
- MTM3121 - Álgebra Linear
- Matemática, Habilitação Bacharelado (222)
- INE5408 - Estruturas de Dados
- MTM3422 - Álgebra Linear II
- Ementa:
- Computação Gráfica Básica. Sistema Gráfico Interativo. Transformações geométricas 2D e coordenadas homogêneas. Clipping. Curvas paramétricas em 2D e 3D. Estruturas de dados gráficas 3D. Navegação 3D. Projeções, perspectiva e clipping 3D. Superfícies paramétricas bicúbicas. Visualização em 3D contendo, Rayshading, Raycasting e Raytracing. Conversão por varredura e buffer de profundidade. Iluminação de objetos. Implementação de um rayshader. APIs Gráficas e OpenGL. Animação e utilização de modelos hierárquicos. Simulação de movimentação de animais e humanos. Realidade virtual e VRML.
- Objetivo(s):
- Geral: Desenvolver os aspectos teórico-praticos da disciplina, com desenvolvimento em laboratório de sistemas gráficos composta de 4 módulos: Módulo I - Computação Gráfica Básica com Implementação de um Sistema Gráfico Interativo. Módulo II: Visualização Realística em 3D. Módulo III - APIs Gráficas Utilizadas Comercialmente. Módulo IV: Aplicações Avançadas e Assuntos Especiais. Objetiva passar ao aluno tanto conhecimentos matemáticos e técnicos fundados sobre as técnicas e preceitos teóricos da Computação Gráfica, quanto prover uma experiência prática no desenvolvimento de sistemas gráficos envolvendo estes conceitos.
- Específicos:
- Compreender e Implementar Visualização Realística em 3D contendo: introdução a Rayshading, Raycasting e Raytracing; conversão por varredura; o buffer de profundidade; modelagem da iluminação de objetos; principais raytracers; implementação de um rayshader.
- Utilizar na prática de APIs Gráficas contendo: introdução a OpenGL; sólidos em OpenGL; operações geométricas em OpenGL; modelos de arame e facetas em 3D; normais e efeitos de Iluminação com OpenGL; Java3D e outras APIs.
- Desenvolver a Aplicações Avançadas contendo: animação e utilização de modelos hierárquicos; simulação de movimentação de animais e humanos e simulação de sistemas de partículas.
- Conteúdo Programático:
- Introdução à CG, aplicações e conseqüências [2 horas-aula]
- Conceitos Básicos de Computação Gráfica[2 horas-aula]
- Coordenadas 2D [8 horas-aula]
- Princípios de Transformações 2D e Coordenadas Homogêneas
- Implementação de Transformações 2D e Coordenadas Homogêneas
- Sistema de Coordenadas da Window
- Clipping 2D
- Curvas [6 horas-aula]
- Métodos analíticos: Blending Functions
- Métodos iterativos: Forward Differences
- Computação Gráfica 3D [8 horas-aula]
- Princípios de Projeções
- Projeções Paralelas
- Transformações 3D
- Perspectiva [6 horas-aula]
- Projeção em Perspectiva
- Clipping 3D
- Superfícies Curvas [4 horas-aula]
- Superfícies Curvas Bicúbicas em 3D
- Métodos analíticos para Superfícies Curvas Bicúbicas em 3D
- Métodos iterativos para Superfícies Curvas Bicúbicas em 3D
- Teoria da Iluminação [8 horas-aula]
- Raytracing, Raycasting, Rayshading
- Buffer de Profundidade
- Conversão por Varredura
- Modelagem de Iluminação de Ambientes e Objetos
- Implementação de Iluminação [4 horas-aula]
- Pixel Shading: fundamentos matemáticos e algoritmos
- Pixel Shading: implementação em CPU e GPU
- Ferramentas de Visualização Realística [4 horas-aula]
- Raytracing com ferramentas open-source como POV-Ray
- Modeladores 3D para Raytracing como Moray
- Linguagens de descrição de cenas
- Modelos de Interação de Fontes de Luz [4 horas-aula]
- Radiância: conceitos e modelos matemáticos
- Radiância: ferramentas e aplicações
- APIs Gráficas [6 horas-aula]
- OpenGL
- Java3D e outras APIs
- Modelos Hierárquicos[4 horas-aula]
- Princípios Básicos
- Modelando movimentos articulados
- Carga horária reservada para o processo de avaliação [6 horas-aula]
- Defesas dos Trabalhos
- Auxílio para trabalhos de recuperação
- Recuperação
- Bibliografia Básica:
- Fundamentals of Interactive Computer Graphics. ANGEL, EDWARD, DAM, A., VAN, FEINER, S., FOLEY, JAMES D. ADDISON WESLEY (PEARSON), 1995, 2a. Edição.
- Computação Gráfica - Teoria e Prática. Conci, Aura; Azevedo, Eduardo. Editora CAMPUS, 2003.
- Computação Gráfica - Teoria e Prática Vol. 2 Conci, Aura; Leta, Fabiana; Azevedo, Eduardo / CAMPUS, 2007.
- Material online disponibilizado no site da disciplina.
- Bibliografia Complementar:
- Principles of Interactive Computer Graphics. Williem Newman & Robert Sproull. McGraw-Hill/Kogakusha
- Interactive Computer Graphics. McGraw-Hill (Livro verde)
- Computer Graphics, C Version, Second Edition by Donald Hearn and M. Pauline Baker, Prentice-Hall, ISBN: 0135309247.
- The OpenGL Super Bible. 2nd. Edition.
- "OpenGL 1.2 Programming Guide, Third Edition: The Official Guide to Learning OpenGL, Version 1.2" by Mason Woo, Jackie Neider, Tom Davis, Dave Shreiner,OpenGL Architecture Review Board, Addison-Wesley Pub Co; ISBN: 0201604582
- "OpenGL Reference Manual: The Official Reference Document to OpenGL, Version 1.2" by Dave Shreiner (Editor), Opengl Architecture Review Board, Addison-Wesley Pub Co; ISBN: 0201657651