• Nenhum resultado encontrado

Computação Gráfica. 35T56 Sala 3E3 Bruno Motta de Carvalho DIMAp Sala 15 Ramal 227

N/A
N/A
Protected

Academic year: 2021

Share "Computação Gráfica. 35T56 Sala 3E3 Bruno Motta de Carvalho DIMAp Sala 15 Ramal 227"

Copied!
40
0
0

Texto

(1)

Computação Gráfica

35T56 – Sala 3E3

Bruno Motta de Carvalho

(2)

Logística do Curso

 2 avaliações  Projetos práticos   Grupos de duas pessoas (somente para os  projetos!!)  Implementações podem ser feitas na  linguagem de sua preferência

(3)

Programa do Curso

 Introdução  Formação e representação de imagens  Algoritmos de rasterização e recorte  Transformações geométricas  OpenGL  Visualização 3D  Sistemas de representação de cores  Representação de curvas e superfícies

(4)

Programa do Curso

 Modelagem de sólidos  Iluminação e sombreamento  Ray­tracing  Radiosidade  Algoritmos de visibilidade  Animação  Programação de GPUs

(5)

Referências

 Computer Graphics: Principle and Practice.  Foley, Van Dam, Feiner and Hughes, Addison  Wesley, 1993  Computer Graphics with OpenGL, 3rd Ed. Hearn,  Baker. Prentice­Hall, 2004  OpenGL Programming Guide: The Official Guide  to Learning OpenGL, Version 1.4, Fourth Edition.  Shreiner, D., M. Woo, J. Neider and T. Davis.  Addison­Wesley, 2003.  http://www.rush3d.com/reference/opengl­ redbook­1.1/

(6)

Cronograma Inicial

Data Assunto Data Assunto

21/02/06Introdução 25/04/06Iluminação e sombreamento 23/02/06 27/04/06Ray-tracing

02/03/06Aquisição e Representação de Imagens 02/05/06PBRT

07/03/06Algoritmos de rasterização e recorte 04/05/06Acelerando o ray-tracing 09/03/06Transformações geométricas 09/05/06Revisão

14/03/06OpenGL 11/05/06Prova 16/03/06Aula prática de OpenGL 16/05/06Radiosidade 21/03/06Visualização tridimensional 18/05/06Radiosidade 23/03/06Visualização tridimensional 23/05/06Animação 28/03/06Sistemas de representação de cores 25/05/06Animação

30/03/06Prova 30/05/06Programação de GPUs 04/04/06Representação de curvas e superfícies 01/06/06Programação de GPUs 06/04/06Representação de curvas e superfícies 06/06/06Acompanhamento dos projetos 11/04/06Representação de curvas e superfícies 08/06/06Acompanhamento dos projetos

13/04/06Semana Santa 13/06/06Apresentação de Trabalhos 18/04/06Modelagem de sólidos 15/06/06Apresentação de Trabalhos 20/04/06Modelagem de sólidos 20/06/06Prova final

(7)

Introdução

O que é computação gráfica?

Como evoluiu a computação gráfica?

Quais as áreas de aplicação em que a 

(8)

Introdução

 Geração de imagens (possivelmente realísticas)  de cenas virtuais usando computadores. Neste  contexto se refere aos algoritmos, construções  conceituais e conhecimentos matemáticos  necessários para gerar cenas virtuais bi ou  tridimensionais   A síntese de figuras artificiais – a criação de  imagens a partir de descrições

(9)

Relacionamento com 

outras áreas afins

Descrições Imagens         Visão Computacional Computação     Gráfica Processamento    de Imagens

(10)

História da Computação 

Gráfica – Anos 60

 DAC­1 (Design Augmented by Computers) –  GM e IBM  Sketchpad (1961) – Ivan Sutherland (MIT) –  Primeiro programa gráfico interativo  Spacewar (1961) – Steve Russel (MIT) –  Primeiro vídeo­game  Primeiras aplicações de visualização científica  – Bell Labs., Boeing, etc.  Primeiras animações e algoritmos de  visibilidade (University of Utah) 

(11)

Evolução do Hardware 

Gráfico – Anos 60

Mini­computador interativo (PDP­1, da 

DEC) – 1960

Caneta ótica para o Sketchpad (MIT) 

– 1961

Terminal gráfico (IBM 2250) – 1965

Head­Mounted Display (Sutherland, 

MIT) – 1966

(12)

História da Computação 

Gráfica – Anos 70

 SCANIMATE (CIC) – programa para leitura  (através de scanners) e manipulação de  artwork já existente  Gouraud shading (1971) – interpolação de  cores nos polígonos  Fundação da III, LucasFilm, Robert Abel &  Associates, digital Effects, MAGI, Systems  Simulation, etc.  Primeiro SIGGRAPH (1973)  Texture­mapping, Z­buffering, renderização de  superfícies curvas (Catmull, UU) 1974

(13)

História da Computação 

Gráfica – Anos 70

 Phong Shading (Phong, UU) – 1974  Fractais (Mandelbrot, IBM) – 1975  Bump­Mapping, environment­Mapping (Blinn,  JPL) – 1976  Primeira edição da Computer Graphic World  (CGW) – 1977   Anti­aliasing (Blinn, JPL) – 1977   Primeiros efeitos especiais produzidos por CG  em longas metragem (Star Wars – 1977, Alien  – 1979) 

(14)

Evolução do Hardware 

Gráfico – Anos 70

 Primeiros microcomputadores (Altair 8800,  MITS) – 1971   Fundação da Atari – 1971 e criação do primeiro  video­game comercial (Pong) – 1972  Primeiros frame­buffers – 1972   Primeiro computador pessoal com display  gráfico (e mouse) Xerox Alto

 

(Xerox) – 1972  Fundação da Apple – 1975 

(15)

História da Computação 

Gráfica – Anos 80

 Ray­tracing (Whitted) – 1980   REYES, primeiro renderer da LucasFilm,  que evoluiu para o Renderman (Carpenter,  LucasFilm) – 1981   Autocad 1 – 1982   Primeiro morphing (Brigham) – 1982   Tron (1982), The Last Starfighter (1984),  Young Shelock Holmes (1985)  Wavefront – Primeiro software comercial  para animação 3D – 1984 

(16)

História da Computação 

Gráfica – Anos 80

 Radiosidade (Goral, Greenberg, Cornell) –  1984  Shading languages (Perlin, NYU) – 1985   TOPAS – Primeiro software de animação  (de boa qualidade) para computadores  pessoais – 1986  Animação forense – 1986   Divisão gráfica da LucasFilm se separa  criando a Pixar – 1986

(17)

Evolução do Hardware 

Gráfico – Anos 80

Lançamento do IBM PC – 1981 

Fundação da SGI – 1982

Dataglove – 1983 

Placa de vídeo Targa – 1984 

VPL Research – Primeira firma 

especializada em realidade virtual – 

1985 

Macintosh – 1985 

(18)

História da Computação 

Gráfica – Anos 90

 3D Studio (Autodesk) – 1990   Programas de pintura  impressionista – NPR –  (Haeberli) – 1990   Terminator 2 – 1991   Doom – Primeiro jogo 3D para  múltiplos jogadores – 1993  Programa de ilustração em  nanquim (Salesin et al.) ­   1994 

(19)

História da Computação 

Gráfica – Anos 90

 Toy Story – Primeiro  longa­metragem  completamente  (??)gerado por  computador – 1995   Cassiopéia (1996)  Maya (Wavefront) – 1998

(20)

Evolução do Hardware 

Gráfico – Anos 90

 Playstation (Sony) – 1995   Nintendo 64 – 1996  NVidia RIVA 128 – 1997     NVidia RIVA TNT (primeira a suportar multi­ texturas) – 1998   NVidia GeForce 256 (primeira GPU) – 1999   NVidia GeForce2 Go (primeira GPU para  laptops) – 2000   NVidia GeForce3 (primeira GPU  programável) – 2001 

(21)

História da Computação 

Gráfica – Atual (Anos 2000)

Point­rendering

Programação em GPUs

Crowd simulation

Técnicas mais avançadas para 

representar fenômenos naturais, 

como fogo, água, raios, etc. 

(22)

Evolução do Hardware 

Gráfico – Atual (Anos 2000)

 NVidia GeForce3 (primeira GPU  programável) – 2001   Shading languages  NVidia GeForce FX – 2002   GeForce FX 5900 – 2003   GeForce 6800 – 2004   GPU ultrapassa a CPU em número de  transistores   Cinema digital

(23)

Aplicações de Computação 

Gráfica 

(24)

Aplicações de Computação 

Gráfica

(25)

Aplicações de Computação 

Gráfica

(26)

Aplicações de Computação 

Gráfica

 Treinamento

(27)

Aplicações de Computação 

Gráfica

(28)

Aplicações de Computação 

Gráfica

 Diagnósticos 

(29)

Aplicações de Computação 

Gráfica

 Diagnósticos 

(30)

Softwares Utilizados em 

Computação Gráfica

 OpenGL (Open Graphics Library) – Atualmente  na versão 2.0. Padrão de referência de placas  gráficas  DirectX  Open Inventor  Renderman   Maya   3DMax  Blender

(31)

OpenGL

Interface de software para o hardware 

gráfico

Permite que programas 

desenvolvidos em uma máquina com 

uma placa gráfica funcionem em 

outras máquinas com diferentes 

placas

(32)
(33)

OpenGL

 OpenGL Utility Library (GLU) – Contém  rotinas que usam comandos OpenGL para  mudar projeções, desenhar superfícies, etc.  (acompanha OpenGL)  OpenGL Extension to the X Window  System (GLX) – Para uso com X Window  The OpenGL Utility Toolkit (GLUT) –  Interface de programação para a escrita de  programas gráficos portáteis

(34)

OpenGL

 Extensões – Mecanismo utilizado para a  incorporação de novas funções ao padrão  OpenGL  Geralmente, extensões propostas por  companhias como Sun, Nvidia, ATI, são  incorporadas no padrão aprovado pela ARB  (Architecture Review Board) da OpenGL  GLEW (The OpenGL Extension Wrangler  Library) – Ajuda na inicialização e no  desenvolvimento de aplicações portáteis

(35)

DirectX

 API da Microsoft Windows API usada para  acessar funções de baixo nível  Direct Draw – Toda renderização passa por ele  Direct 3DRM – Sistema de alto nível baseado  em objetos e frames para programas 3D  Direct 3DIM – Suporte 3D de baixo nível para  DirectX  DirectX Graphics – A partir do DirectX 8.0, os  três sistemas acima foram unidos no DirectX  Graphics

(36)

Open Inventor

 Open Inventor é uma biblioteca orientada a  objeto baseada no OpenGL que  implementa objetos e métodos para a  criação de aplicações gráficas  tridimensionais interativas   Considerado por muitos como a biblioteca  padrão para visualização tridimensional e  software de simulação visual na  comunidade científica

(37)

Open Inventor

 Open Inventor oferece:  Objetos e um modelo de  eventos para interação  com o usuário  Componentes de  aplicações de alto nível  para a criação e edição  de cenas 3D  Impressão e conversão  de dados para vários  formatos

(38)

Open Inventor (Coin)

 Coin implementa a  API do Open  Inventor  Gratuita, com  versões para Unix,  Linux, BSD, Mac  OS e Windows  Com bindings para  Qt, Win32, Xt/Motif  e Mac OS X GUI

(39)

Estado da Arte em 

Computação Gráfica

Simulação de fluidos, fumaça, 

viscosidade

Renderização não­fotorealista (NPR)

Renderização baseada em imagens 

Renderização baseada em vídeos

Simplificação e deformação de malhas 

tridimensionais

(40)

Estado da Arte em 

Computação Gráfica

Caracterização e extração de 

movimento para animação

Programação de unidades de 

processamento gráfico (GPUs)

Modelagem interativa

Renderização de áudio

Animação de personagens 

influenciada por dados

Referências

Documentos relacionados

intermedia (Yi) strains isolated from humans (one), animals (two) and environment (64) according to their source of isolation, origin and year of reception.. a

In this booklet you will find samples of exercises, quizzes and an answer key from the Conversational Portuguese Series 2 Workbook by Maria Oliveira.. You will also find the

(A) o auxílio-doença, aposentadoria por invalidez, pela média aritmética simples dos maiores salários-de- contribuição corrigidos mês a mês, correspondentes a cem por cento

Em todos os exames por imagem, foi possível avaliar a fissura palatina, mas foi constatado que, no exame tomográfico, conseguiu-se determinar, de maneira mais próxima do real, toda

11.1. Respeitados os prazos de carência, as exclusões estabelecidas nestas Condições Ge- rais, este Contrato assegurará ao Beneficiário Titular e aos seus Dependentes a cobertura das

A população frequentemente não aprova o recolhimento de animais e as instalações públicas para alojamento e, uma vez que o incentivo à propriedade, posse ou guarda responsável é

os dois futuros do conjuntivo “futuros do subjuntivo” — imperfeito “imperfecto” e perfeito “perfecto” — não são, em português, tempos mortos, como no

Entretanto, se tomar o Mytfor (cloridrato de metformina) juntamente com outros medicamentos para o tratamento da diabetes que possam causar hipoglicemia (tais como