1 GB-109 – Elementos de Computação Gráfica Professor Gilson A. Giraldi (gilson@lncc.br)...

Post on 21-Apr-2015

104 views 1 download

Transcript of 1 GB-109 – Elementos de Computação Gráfica Professor Gilson A. Giraldi (gilson@lncc.br)...

1

GB-109 – Elementos de Computação Gráfica Professor

Gilson A. Giraldi (gilson@lncc.br)

Coordenação de Ciência da Computação

Web Page:

http://virtual01.lncc.br/~giraldi/GB-109

2

1. Introdução à Computação Gráfica 1.1 Conceitos Básicos 1.2 Dispositivos Gráficos 2D e 3D 1.3 Modelagem em Computação Gráfica 1.4 Interação com os objetos de uma Cena 1.5 Sistemas para Visualização de Dados 2. Tecnologia dos Dispositivos Raster 2.1 Algoritmo de Bresenham’s 2.2 Geração do Display – Scan Convertion 2.3 Frame Buffers 2.4 Algoritmos para Preenchimento de Polígonos 2.5 Aliasing 2.6 Teoria de Cores 3. Clipping 3.1 Clipping 2D 3.2 Clipping 3D 4. Superfícies e Linhas Escondidas

Ementa do Curso

3

5. Transformações no Plano e no Espaço 5.1 Introdução – Matrizes e Computação Gráfica 5.2 Coordenadas Homogêneas 5.3 Transformações de Escala 5.4 Transformações de sisalhamento 5.5 Rotação e Translação 5.6 Reflexão 5.7 Geometrias Afim e Perspectiva 5.8 Projeções: Ortográfica, Axonométrica, Obliqua e Perspectiva 6. Modelagem Geométrica 6.1 Representação Implícita e Paramétrica 6.2 Espaços de Curvas: Bézier e Splines 6.3 Superfícies Implícitas 6.4 Representações Paramétricas de Superfícies 6.5 Superfícies Splines 7. Rendering 7.1 Conceitos básicos 7.2 Modelos de Iluminação 7.3 Determinando o Vetor Normal e Vetor de Reflexão 7.4 Modelos de Phong e Gourand 7.5 Efeitos de Transparência, Sombras e Texturas 7.6 Ray Tracing 7.7 Radiosidade

Ementa do Curso

4

GB 109 GA 023

GB 500: Topicos em Vis. Cient. e RV

Quarto PeriodoTerceiro Periodo

Segundo Periodo

Computação Visual no LNCC

5

What is Computer Graphics?

create images with computer

6

What is CG used for?

graphical user interfaces modeling systems simulation & visualization

7

What is CG used for?

movies animation special effects

8

What is CG used for?

computer games

9

What is CG used for?

images design advertising art

10

What is CG used for?

Virtual reality and Augmented reality

11

What is CG used for?

•Scientific Visualization

12

Main Areas in CG

Hardware Visibility Geometric Modeling Rendering Animation

13

• I/O Devices

• Virtual Reality (VR)

• Motion Capture

•Displays – VR, Holographic

•GPU and PPU

•Cameras (Image-Based-Rendering)

•Lazer Scanners

Hardware

14

Hardware Input Devices Mouse 2D/3D, scanners 2D, Haptic Devices

Mouse 3DPhantom - Haptic Device

15

Hardware Input Devices

Data Glove Motion Capture

16

Laser Scanners Input Devices

17

Hardware

Output Devices

18

Hardware

Output Devices

Holographic Display

19

3D Local Visualization Model

20

Simple Illumination Model

• No Transparency effects

• No Shadows

• No Secondary light sources

21

Perspective Projection

22

Viewing Transformation: Camera Placement

23

Clipping

we’ve been assuming that all primitives (lines, triangles, polygons) lie entirely within the viewport in general, this assumption will not hold:

24

Clipping

analytically calculating the portions of primitives within the viewport

25

Hidden Lines

26

Hidden Line Removal

27

Hidden Surface Removal

28

Rasterization

29

Rendering

30

Gouraud Shading

31

Specular Reflection

32

Phong Shading

33

Surface Representation

34

Complex Lighting and Shading

35

Texture Mapping

36

Global Illumination Model (Ray-Tracing)

37

Global Illumination

38

Animation

generating motion interpolating between frames Physics-Based Models Motion Capture

39

Mathematical Elements for CG Spatial Data Structures (Octree, etc) Geometric Modeling

Surface Representation: Splines, NURBS, Implicit representations Variational Methods Differential Manifolds Models

Light Models Image Based Techniques Kinematics and Dynamic Methods – Physics-Based Modeling Stochastic Methods – Non-Deterministic Fractals

40

GB-109

Objetivo Principal: Estudo de elementos teóricos básicos para CG no contexto da Modelagem Computacional.

Curso Baseado em: Seminários Trabalhos Teóricos e práticos Duas provas escritas

Linguagem de Programação: C, C++, Java ou Python

41

Avaliação e Média Final

•Duas Provas (P1 e P2): Notas de 0.0 a 10.00.0 – 2.9 (E) 7.0 – 7.9 (B)3.0 – 4.9 (D) 8.0 – 8.9 (B+)5.0 – 6.9 (C) 9.0 – 10.0 (A)

•Provas com 3/5 das questões baseadas nas listas

•Listas para casa e listas para a sala

•Média dos trabalhos (Listas,implementações, Seminários): MT

•Média Final = (P1 + MT + P2)/3

42

GB-109

Não é curso state-of-the-art

Não enfoca utilização de aplicativos

Não ensina high-level libraries (OpenGL,etc)

Estes temas poderão ser cobertos em estudos posteriores.

43

Pré-Requisitos: Lista Exercicios 1

.,:

:

,,:

,

,,,,,

33

321

xAxTT

çõesTransforma

vvvBBases

uvuv

feducbav

2222

rt

cz

s

by

r

ax

Geometria Analítica em 3D: Equações de retas, cônicas, planos, esferas, etc

Cálculo Vetorial e Algebra Linear

Cálculo Diferencial e Integral

dt

dz

dt

dy

dt

dx

dt

rd

tztytxtr

,,

,,,

44

CUIDADO!

Curso trabalhoso

Enfoque matemático e formal

Implementações exigem tempo para obter os resultados necessários

45

Perspectivas para Teses

• Computação Gráfica•Modelagem Geométrica via Métodos Variacionais•Modelos Massa-Mola•Realidade Virtual

•Visualização Científica•Visualização de Campos Dependentes do Tempo

•Animação de Fluidos•Multiresolução•Técnicas Baseadas em Partículas

46

Bibliografia

1) D. F. Rogers. Procedural Elements for Computer Graphics. McGraw-Hill International Editions , 1985.

2) D. F. Rogers and J. A. Adams. Mathematical Elements for Computer Graphics. McGraw-Hill International Editions , Second Edition, 1990.

3) J. D. Foley, A. Dam, S. K. Feiner, and J. F. Hughes. Computer Graphics, Principles and Practice, 2nd ed. Addison Wesley, 1990.

4) Fernando Luiz B. Ribeiro, Introdução à Computação Gráfica, edited by Setor de Publicações e Programação Visual/COPPE, Universidade Federal do Rio de Janeiro.