Introducci ón

69
Introducción Introducción a la Computación Gráfica

description

Introducci ón. Introducción a la Computación Gráfica. CG. - PowerPoint PPT Presentation

Transcript of Introducci ón

Introducción

Introducción a la Computación Gráfica

CG

• La computación gráfica estudia la manipulación de información visual y geométrica usando técnicas computacionales. Desde el punto de vista académico se enfoca en las bases matemáticas y computacionales de la generación y procesamiento de imágenes

¿Qué es CG?Imagen artificial creada con Raytracing

¿Qué es CG?Imagen artificial creada con Raytracing

Simulación de cabello

Simulación de tejidos

¿Qué es CG?

Representación de los datos

Mallas de polígonos

¿Qué es CG?

4 Gbytes de datos

Representación de los datos

Volúmenes

¿Qué es CG?Volúmenes

Historia

• 1957 proyecto SAGE para la defensa del espacio aéreo. Introduce el uso de pantallas CRT para el monitoreo de radares

Historia

• 1961 Primer juego de video: Spacewars

Historia

• 1963 Ivan Sutherland presenta Sketchpad que permite el diseño interactivo en un monitor

Historia

• 1963 invención del mouse por Doug Englebart

Historia

• También en 1963:– Parches de Coon– DAC-1 primer sistema CAD comercial– Algoritmo de remoción de líneas ocultas de

Roberts

Historia

• 1964: RAND, primera tableta de digitalización (18000 $)

Historia• 1965

– Algoritmo de Bresenham para dibujar líneas– CADAM (Lockheed)– CADD (McDonnell Douglas)

• 1966– Lincoln Wand (rastreador 3D ultrasónico)– Primer simposio sobre CAD en Oklahoma– Algoritmo de líneas ocultas de Loutrel

Historia• 1967

– Primer simulador de vuelo interactivo a color para la NASA creado por GE

• 1968– Primer departamento de CG fundado (Universidad de Utah)– HMD de Ivan Sutherland

Historia• 1967

– Primer simulador de vuelo interactivo a color para la NASA creado por GE

• 1968– Primer departamento de CG fundado (Universidad de Utah)– HMD de Ivan Sutherland

Historia• 1969

– Primer FrameBuffer creado por Bell Labs (3 bits)– Primer uso de CGI en comerciales– Primera GUI (Graphical User Interface) desarrollada por Xerox– Creación de SIGGRAPH

• 1970– Algoritmo de Watkins para superficies visibles– Desarrollo de curvas de Bezier para Renault

• 1971– Gouraud shading

Historia• 1972

– Primeras animaciones por computadora (hand – Catmull y face de Parke) Ver video

– Pong desarrollado por Atari

Historia• 1973

– Primera conferencia SIGGRAPH– Uso de B-Splines para diseño geométrico

• 1974– SuperPaint

Historia• 1974

– Z-Buffer desarrollado por Catmull• 1975

– Phong Shading– Fractales (Mandelbrot)– Algoritmo de Catmull para superficies curvas

Historia• 1976

– Jim Blinn: reflectancia y environment mapping• 1977

– Frank Cow: Antialiasing– Jim Blinn: Facets– Se empieza a entregar el Oscar a efectos especiales– Simulación de la Estrella de la Muerte para Star Wars

Historia

• 1978: – Primer título de película en CGI: Superman– Jim Blinn: Bump mapping

Historia• 1979:

– George Lucas contrata a Ed Catmull para formar Lucasfilm• 1980:

– Turner Whitted: Ray Tracing– Hanna-Barbera comienza a utilizar computadoras para todo el proceso de animación

Historia• 1981:

– Primera película con un personaje generado por computadora: Looker. • 1982:

– Tron– Skeleton Animation System – Tom Brighham: Morphing– Star Trek II. Secuencia Génesis por ILM (Video)

Historia• 1983:

– Sistemas de partículas– Tiller: NURBS– AutoCAD– Williams: mip-mapping

• 1984:– Primer comercial de 30 segundos totalmente CGI

Historia• 1984:

– Carpenter: A-Buffer– Ray Tracing distribuído (LucasFilm)– Universal Studios abre un departamento para CG– Primeros rastreadores 3D comerciales (Polhemus)– Radiosidad (Cornell U.)– Motion Blur (LucasFilm)

Historia• 1985:

– Young Sherlock Holmes

Historia• 1986:

– X-Window– Luxo Jr. (Video)– Formato TIFF (Aldus)

• 1987:– Formato GIF (CompuServe)– Willow (se populariza el morphing) (Video)– Introducción de VGA por IBM– Algoritmo de Marching Cubes

• 1988– Pixar Patenta RenderMan– ¿Quién engañó a Roger Rabbit?

Historia• 1989:

– Photoshop– El Abismo– Pixar comienza a vender RenderMan

Historia• 1990:

– Primera edición de Graphics Gems– 3D Studio

• 1991:– Terminator 2: primeros movimientos humanos realistas. Primer

uso de PCs convencionales para crear efectos 3D– JPEG/MPEG

• 1992:– OpenGL– CAVE

• 1993:– Jurassic Park– Doom– Myst

Historia• 1990:

– Primera edición de Graphics Gems– 3D Studio

• 1991:– Terminator 2: primeros movimientos humanos realistas. Primer

uso de PCs convencionales para crear efectos 3D– JPEG/MPEG

• 1992:– OpenGL– CAVE

• 1993:– Jurassic Park– Doom– Myst

Historia

• 1994:– 3DFX. Voodoo Graphics. Aceleración 3D en

hardware. Provee algunas funcionalidades básicas en el hardware.

Historia• 1995:

– Toy Story: Primer largometraje animado completamente CGI– Waterworld: primer rendering de agua fotorealístico

• 1996:– Quake

• 1998:– MPEG-4– Geri’s Game (Video)– Voodoo2: textura en GPU

Historia• 1995:

– Toy Story: Primer largometraje animado completamente CGI– Waterworld: primer rendering de agua fotorealístico

• 1996:– Quake

• 1998:– MPEG-4– Geri’s Game (Video)– Voodoo2: textura en GPU

Historia• 1995:

– Toy Story: Primer largometraje animado completamente CGI– Waterworld: primer rendering de agua fotorealístico

• 1996:– Quake

• 1998:– MPEG-4– Geri’s Game (Video)– Voodoo2: textura en GPU

Historia• 1999:

– NVidia RIVA TNT2: multitexturing (2 texturas) en hardware– NVidia GeForce 256: primer GPU con cálculo de T&L en

hardware– Star Wars Episode One: primer largometraje en usar CG en

miles de tomas. Efectos ambientales, vehículos y multitudes• 2001:

– Final Fantasy, Lord of the Rings: primer largometraje en usar motion capture para las acciones de sus personajes

– El Señor de los Anillos: La comunidad del anillo: primer uso de Inteligencia Artificial para actores digitales

– GeForce 3: vertex shaders y pixel shaders programables. Antialiasing

– Primeras aplicaciones GPGPU

Historia• 2002:

– El Señor de los Anillos: Las dos Torres: primer personaje fotorealístico en un largometraje: Gollum

• 2006:– GeForce 8: arquitectura unificada de shaders. Incorpora un

mismo conjunto de instrucciones para todos los shaders. Todos los shaders tienen las mismas habilidades

• 2007: – Beowulf: primer largometraje hecho 100% con CGI. Motion

capture de todos los personajes

Adquisición de Datos

• Los datos para CG se pueden adquirir de distintas fuentes

• Cámaras e escáneres para obtener imágenes

• Escáneres 3D para mallados

• Tomografías y resonancias magnéticas para datos volumétricos

Técnicas de Interacción

• Distintos dispositivos de hardware se han creado para interactuar en CG

• Desde ratones, trackballs y teclados hasta rastreadores de posición y otros

Tecnologías de Despliegue

• El objetivo principal de CG es la generación de imágenes

• Es por lo tanto de suma importancia un hardware adecuado para el despliegue de estas imágenes

Monitores CRT

• Tubo de Rayos Catódicos

•Contiene una Pistola de Electrones que contiene un filamento que al calentarse emite un flujo de electrones

•Los electrones se enfocan con un electromagneto

•La cara frontal del tubo tiene un arreglo rectangular de puntos (píxeles) que contiene fósforo

•El fósforo al ser tocado por electrones emite luz proporcionalmente a la cantidad de electrones

Monitores CRT1. Pistola de electrones (RGB)

2. Rayos de electrones

3. Electromagnetos para enfocar

4. Electromagnetos para apuntar

5. Ánodo

6. Máscara para separar cada canal

7. Capa de fósforo

8. Acercamiento de la capa de fósforo

Monitores CRT

Monitores LCD

• Liquid Crystal Display

• Ampliamente utilizados como monitores, TVs, consolas, etc.

• Permiten que el dispositivo sea menos voluminoso

Monitores LCD

• El cristal líquido cambia de dirección dependiendo de la cantidad de electrones que pasé a través de él.

• De esta forma se puede regular la cantidad de luz que el LCD deja pasar, como una persiana

• El LCD no emite luz, necesita una fuente externa de luz

• La luz puede ser reflejada del exterior (relojes, calculadoras), o producida en la parte posterior del LCD

Monitores LCD

LCD Reflectivo

Monitores LCD

LCD Iluminado

Monitores LCD

Los píxeles están organizados en una matriz. Cada componente de color de cada píxel recibe una carga eléctrica distinta dependiendo de la intensidad de ese píxel

Monitores Plasma

•El plasma es una gas formado por electrones libres. Al aplicarle electricidad al gas se liberan fotones

•Generalmente el gas usado es Xenon o Neon, los cuales liberan luz ultravioleta

•Una pantalla de plasma tiene una matriz de puntos de fósforo como en un CRT

•La luz ultravioleta liberada por el gas hace que el fósforo se encienda

Monitores Plasma

Monitores LED

•Utilizan una matriz de LEDs para generar el color

•Los LEDs emiten luz de un color fijo dependiendo de la intensidad de la corriente que pase a por él

•Cada píxel se forma con 3 LEDs (R,G,B)

Proyector DLP

•Digital Light Processing

•Están basados en un dispositivo micromecánico llamado Digital Micromirror Device, el cuál usa espejos para reflejar la luz y producir la imagen

•Un DMD puede contener mas de 2 millones de espejos

Proyector DLP

Proyector DLP

•Los espejos son capaces de reflejar hasta 1024 tonos de gris dependiendo del ángulo con el que la luz incide sore ellos

•Para agregar color, la luz blanca pasa a través de una rueda de colores RGB

Modelos de Color

• La luz es energía electromagnética en el rango del espectro de 400 a 700 nanómetros de longitud de onda, percibidos como los colores que van desde el rojo, naranja, amarillo, verde, azul, índigo y violeta.

Modelos de Color

• Percepción humana del color• La sensación de color es una percepción

subjetiva resultante del efecto de la luz en los conos de los ojos.

• Hay tres tipos de conos, cada uno con una sensitividad a la luz roja, verde y azul.

• Esta descomposición de la luz en tres componentes de color es conocida como la teoría tríestimulo del color y es la base para el modelo RGB.

RGB

RGB

• No todos los colores perceptibles por los humanos pueden ser representados en un computador con el modelo RGB.

• Los mismos valores RGB no necesariamente resultaran en el mismo color en dos monitores distintos.

• Los colores RGB no son colores puros. Son una mezcla de las luces emitidas por los puntos de fósforos, las cuales tienen distintas longitudes de ondas.

RGBA (32 bits)

• El canal A (alpha) indica la transparencia del píxel y sirve para saber cómo mezclar distintos colores. Un píxel con A=0 es completamente transparente. Un píxel con A=1 no tiene transparencia

CMY

• Un modelo de color para impresión.

• Cyan, Magenta, Yellow

• Es un modelo de color substractivo en donde se parte del blanco (un hoja en blanco) y se le substraen colores hasta llegar al negro

CMYK

• Cyan, Magenta, Yellow, blacK

• Teóricamente el negro puede formarse mezclando Cyan, Magenta y Amarillo, pero debido a imperfecciones en los pigmentos se utiliza un canal de tinta negra pura

HSV

• Es un modelo mas natural para artistas

• H – Hue o matiz de color, es determinado por la longitud de onda dominante

• S – Saturación, está relacionada con cuánta luz blanca tiene el color

• V – Valor (Iluminación), se refiere a cuan oscuro es el color

HSV

HSV

• Por lo general se expresa en coordenadas cilíndricas

HSV

YUV/YIQ

• Son modelos de color en donde Y representa la luminancia y la cromaticidad se representa con UV o IQ

• YIQ se utiliza en América

• YUV se utiliza en Europa

YUV/YIQ

YUV/YIQ

• Muy utilizado para compresión de imágenes/video ya que la información de luminancia es más importante que la información de cromaticidad, por lo que se puede representar la cromaticidad con menos precisión (usando menos bits)

Librerías gráficas

• OpenGL

• Direct3D

• Engines