martes, 26 de abril de 2011

Breve Historia de la Computación Grafica


En sus inicios las computadoras se utilizaban principalmente en aplicaciones científicas. La ENIAC, una de las primeras computadoras, calculaba densidades de neutrón transversales para ver si explotaría la bomba de hidrógeno. Los resultados se reportaban por medio de dispositivos de impresión sencillos que producían secuencias de caracteres alfanuméricos que los usuarios debían examinar. El siguiente paso en la evolución de las computadoras fue la creación de dispositivos de visualización que permitían al usuario de una computadora observar los resultados del procesamiento en el dispositivo. La primera computadora que utilizó un CRT (Tubo de Rayos Catódicos) como dispositivo de visualización fue Whirlwind, construida en el MIT (Instituto Tecnológico de Massachussets) en 1950 para simular vuelos de entrenamiento de los escuadrones de bombarderos de la marina de Estados Unidos.

Durante la década de los 50 también continuó el desarrollo de los dispositivos de entrada. El sistema para la defensa espacial SAGE, desarrollado para convertir los sonidos de detección de un radar en imágenes, fue el primero en emplear un lápiz óptico para seleccionar símbolos en la pantalla.

El primer videojuego de la historia fue creado en 1952, con el nombre de OXO. Fue producto de la tesis doctoral de Alexander Sandy Douglas en la Universidad de Cambridge para demostrar la interactividad entre computadoras y seres humanos. El juego era una versión del conocido “tres en raya” y fue escrito para la computadora EDSAC.

En 1961 un estudiante del MIT, Steve Russell dirigió un equipo que creó el primer videojuego interactivo de naves espaciales. Le tomó al equipo cerca de 200 horas-hombre escribir la primera versión de Spacewar. El juego se escribió en una PDP-1 que fue una donación de DEC al MIT esperando que en el MIT se pudiera hacer algo trascendente con su producto.



El modo de juego de Spacewar! Involucra dos naves espaciales armadas llamadas “la aguja” y “la cuña” intentando disparar a la otra mientras se maniobra en el flujo gravitacional de una estrella. Cada nave tiene un número limitado de misiles y combustible. Cada jugador controla una de las naves y debe intentar simultáneamente disparar a la otra nave y evitar chocar con la estrella. Los movimientos de las naves inicialmente se controlaban por medio de interruptores de prueba en el panel frontal del equipo, con cuatro interruptores para cada jugador.

Fue en 1963 cuando se creo el primer sistema que permitía la manipulación directa de objetos gráficos y fue el precursor de los sistemas modernos de gráficos por computadora y los programas de diseño asistido por computadora (CAD). El sistema, creado para aplicaciones de diseño e ingeniería fue desarrollado por Ivan Sutherland como trabajo de tesis doctoral en el MIT. El sistema permitía a los usuarios dibujar puntos, segmentos de líneas rectas y arcos circulares directamente sobre la pantalla mediante un lápiz óptico.


En 1966 Sutherland, ejerciendo como profesor en Harvard, junto con Bob Sproull fue el primero en implementar un sistema de realidad virtual, a través del cual, con la ayuda de un casco, los usuarios podían ingresar virtualmente en una habitación y mirar en todas direcciones una vez adentro.
Los inventos de Ivan Sutherland contribuyeron al desarrollo de las interfaces gráficas de usuario que actualmente son una parte indispensable en cualquier sistema de cómputo.
Muchas de las ideas demostradas por primera vez en el Sketchpad ahora son parte de entornos de computadoras usadas por millones en aplicaciones de investigación científica, negocios y recreación.

Estas ideas incluyen:

• El concepto de estructura jerárquica interna de una imagen representada por computadora y la definición de esa imagen en términos de sub-imágenes.
• El concepto de imagen maestra e instancias de imagen las cuales son versiones transformadas de la imagen maestra.
• El concepto de restricción como un método para especificar detalles de la geometría de una imagen.
• La habilidad para desplegar y manipular representaciones icónicas de las restricciones.
• La habilidad de copiar así como crear instancias tanto de imágenes como restricciones.
• Algunas técnicas elegantes para la construcción de imágenes usando un lápiz luminoso.
• La separación del sistema de coordenadas en el cual una imagen es definida a partir de lo que es desplegado; y
• Operaciones recursivas tales como “mover” y “borrar” aplicadas a las imágenes definidas jerárquicamente.

En el ámbito del hardware, los CRT utilizados hasta entonces podían trazar líneas rectas entre dos puntos en la pantalla, pero ya que las líneas dibujadas se desvanecían en la pantalla, era necesario redibujarlas varias veces por segundo, lo que solo era posible por medio de dispositivos muy costosos de hardware. Estos dispositivos se denominaban pantallas de vector, de trazo o caligráficas. El primer dispositivo de este tipo fue introducido al mercado por IBM en 1965.

En 1968 Tektronix introdujo un CRT con tubo de almacenamiento que permitía retener permanentemente un dibujo hasta que el usuario decidiera borrarlo. Este sistema eliminó la necesidad de utilizar costosos sistemas especiales de hardware y memoria para redibujado. Aunque su precio era más accesible no dejaba de ser elevado. Sus modelos 601 y 611 fueron los primeros en su línea de productos diseñados especialmente para gráficos por computadora. El primer modelo comercial de Tektronix fue el 4002A con un precio aproximado de 9000 dólares.

En 1970 un estudiante de nombre Edwin Catmull iniciaba sus estudios en la Universidad de Utah, inscribiéndose a la clase de gráficos por computadora de Sutherland. Habiendo crecido con los dibujos animados de Disney, Catmull amaba la animación aunque rápidamente descubrió que no tenía talento para dibujar. Pero Catmull, al igual que otros, vio las computadoras como la evolución natural de la animación y quería ser parte de esa revolución. La primera animación por computadora que Catmull vio fue de si mismo. El creó una animación de su mano abriéndose y cerrándose. Se volvió uno de sus objetivos crear una película entera usando gráficos por computadora. En la misma clase Fred Parke creó una animación del rostro de su esposa.

Con la presencia de Sutherland que fue reclutado por Dave Evans para el programa de ciencia computacional en la Universidad de Utah, esta comenzó a ganar reputación como lugar para la investigación de gráficos computacionales, de modo que Catmull acudió ahí para aprender sobre gráficos 3D.
De ese modo el laboratorio de gráficos por computadora de la Universidad de Utah atrajo gente de todas partes, John Warnock fue uno de esos pioneros; mas tarde fundaría Adobe Systems y crearía una revolución en el mundo de la publicación con su lenguaje de descripción de páginas PostScript. Tom Stockham dirigió el grupo de procesamiento de imagen en Utah que trabajó estrechamente con el laboratorio de gráficos por computadora. Jim Clark también estuvo ahí; después fundaría Silicon Graphics Inc.
El mayor de los primeros avances en gráficos por computadora tridimensionales fue creado por esos pioneros, el algoritmo de superficie oculta. Para dibujar la representación tridimensional de un objeto en la pantalla, la computadora debe determinar cuales superficies están “detrás” del objeto desde la perspectiva del observador, y de ese modo serían “escondidas” cuando la computadora crea (o renderiza) la imagen.

A partir de 1970 se comenzaron a introducir los gráficos por computadora en el mundo de la televisión. Computer Image Corporation (CIC) desarrollo sistemas complejos de hardware y software como ANIMAC, SCANIMATE y CAESAR. Todos esos sistemas funcionaban escaneando una imagen existente, para después manipularla, aplastándola, estirándola, girándola y haciéndola volar por la pantalla, etc.… Bell Telephone y CBS Sports fueron unos de los muchos que empezaron a usar los nuevos gráficos por computadora.

Uno de los mas importantes avances para los gráficos por computadora apareció en escena en 1971, el microprocesador. Usando tecnología de circuitos integrados desarrollada en 1959, la electrónica de un procesador de computadora fue reducida a un único chip, el microprocesador a veces llamado CPU (Unidad Central de Procesamiento). Una de las primeras microcomputadoras de escritorio diseñada para uso personal fue la Altair 8800 de Micro Instrumentation Telemetry Systems (MITS). Se entregaba por correo en forma de kit para armar, la Altair (nombrada como un planeta en la popular serie Star Trek) se vendía alrededor de los 400 dólares. Tiempo después las computadoras personales avanzarían hasta punto de permitir la creación de gráficas computacionales con calidad de película.

Pero el avance de la industria no se limitaba al entretenimiento para el hogar. El primer videojuego público y comercial de la historia fue el Galaxy Game, creado por dos estudiantes de la Universidad de Stanford, Hill Pitts y Hugh Tuck, quienes reprogramaron la versión original del juego Spacewar de Stephen Russell. La máquina fue instalada en Tresidder Memorial Union, una tienda dentro del complejo del campus en la Universidad. Oficialmente la primer máquina de videojuegos para obtener ganancias económicas en ser colocada en un sitio público y que poseía un mecanismo para recaudar monedas de 5 centavos. Fue arrollador el éxito de la máquina, con colas interminable para disfrutar del juego por unos minutos.

Tanto en la industria de los videojuegos y entretenimiento como en las aplicaciones científicas se presentaron avances con gran rapidez. Durante la década de los 70’s Don Greenberg de la Universidad de Cornell creó un laboratorio de gráficos por computadora que produjo nuevos métodos de simulación realista de superficies. El programa de gráficos por computadora de Cornell es bien conocido por sus trabajos en síntesis de imágenes realistas, incluyendo el método de radiosidad para el cálculo de iluminación directa e indirecta en escenas sintéticas. El objetivo del laboratorio a largo plazo es desarrollar modelos de iluminación basados en física y procedimientos de renderizado preceptúales que sean visual y cuantificablemente indistinguibles de imágenes del mundo real. Su trabajo ha generado muchas de las más notables capacidades de iluminación en el software comercial.

En la conferencia SIGGRAPH de 1980 fue mostrada una impactante película titulada “Vol Libre”. Se trataba de un vuelo de alta velocidad a través de montañas fractales generadas por computadora. El programador de nombre Loren Carpenter de la compañía Boeing en Seattle, Washington había estudiado y modificado la investigación de Mandelbrot para simular montañas fractales realistas.
Carpenter había estado trabajando en el departamento de servicios de cómputo de Boeing desde 1966 y era estudiante en la Universidad de Washington. Eventualmente trabajó con un grupo en Boeing en un sistema de dibujo asistido por computadora. Esto finalmente le dio acceso al equipo de gráficos por computadora. Trabajando ahí con otros empleados, desarrolló varios algoritmos de renderizado y publicó artículos sobre ellos.

A finales de los 70’s Carpenter había construido modelos en 3D de diseños de aeroplanos y quería algunos escenarios para usarlos. Así que leyó el libro de Mandelbrot y de inmediato se decepcionó cuando encontró que las fórmulas no eran prácticas para lo que el tenía en mente. En esa época se había estrenado Star Wars y siendo gran fan de la imaginación Carpenter soñó con crear algún tipo de paisaje extraterrestre. Esto lo condujo a hacerlo realmente; para 1979 tenía una idea de cómo crear un terreno fractal en animación.
Durante un viaje de negocios al estado de Ohio en 1979, Carpenter encontró a una persona que conocía bastante gente en el campo de los gráficos por computadora, gente como Ed Catmull. Él le explicó como Catmull había sido contratado por George Lucas para montar un laboratorio en Lucasfilm. Carpenter se interesó inmediatamente pero no quería mandar su currículo aún, porque todavía estaba trabajando en su película de la montaña fractal.
Carpenter continuó trabajando, quería demostrar no solo que esas imágenes fractales lucían bien, sino que además podían animarse bien. Lo logró después de resolver varias dificultades técnicas y su película estuvo lista para presentarse en SIGGRAPH 1980. Quería llamar la atención tanto como fuera posible ya que deseaba trabajar en Lucasfilm. Al término de la película fue contratado por la gente de Lucasfilm que era parte de la audiencia. Mas tarde, en 1981 Carpenter escribió su primer programa de rendering para Lucasfilm, llamado REYES (Renders Everything You Ever Saw). REYES eventualmente formaría parte del motor de Renderizado Renderman y actualmente, Carpenter aún está con Pixar.
En 1986 se formó Pixar cuando la división de gráficos por computadora de Lucasfilm fue adquirida por Steven Jobs. El equipo pionero de la compañía formado por John Lasseter, Ed Catmull y Ralph Guggenheim produjo el famoso software Renderman.

Para 1995 las audiencias de todo el mundo estaban acostumbradas a ver asombrosos gráficos en películas, pero hubo otra revolución de gráficos, que comenzó ese año. Sony lanzó al mercado mundial su consola de juegos Playstation (X). Hasta entonces las llamadas consolas de videojuegos solamente podían manejar gráficos 2D, pero el Playstation contenía un chip (además del CPU) de 3D acelerado por hardware capaz de dibujar 360,000 polígonos por segundo.

1996 podrá no ser el año más excitante en el uso de CGI en películas, pero la industria de los videojuegos experimentó un gran avance en los gráficos 3D con la salida de Quake de ID Software. 3D acelerado por hardware se convirtió en la frase de moda y al menos dos fabricantes sacaron al mercado aceleradores gráficos para PC (Diamond Edge de Diamond Multimedia usando el procesador NV1 de nVidia, y Virge de S3). Sin embargo los aceleradores de esta primera generación fueron prácticamente inútiles. Quake nunca los requirió y aún cuando los usara, los aceleradores ofrecían un pobre desempeño.
En 1997 la industria de los videojuegos experimentó de nuevo una revolución, esta vez fue el acelerador 3DFX Voodoo 3D. Este chip 3D aplastó por completo a la competencia con su increíble y extremadamente práctico desempeño en 3D. Este era el momento de cambio para los gráficos 3D acelerados por hardware. Después de Voodoo no hubo vuelta atrás. 1997 también vio la llegada de Quake 2. Los beneficios de un buen acelerador 3D fueron obvios y el lema fue: “Si quieres jugar juegos geniales, tendrás que comprar un acelerador 3D”.

1999 fue probablemente el año más excitante para los videojugadores de todo el mundo. nVidia finalmente logró superar el desempeño de 3DFX en la batalla de los chips 3D con su procesador TNT2. Ni siquiera la Voodoo 3 podría igualar al chip TNT2 (y TNT2 Ultra). Pero nVidia no se detuvo ahí. En octubre sacaron a la venta el primer GPU (Unidad Gráfica de Procesamiento) para consumidor del mundo, la GeForce256. La GeForce (nombre código nv10) fue la primera tarjeta 3D que poseía un motor de hardware llamado Transform & Lighting. Ninguno de los títulos lanzados en 1999 soportaba esta opción con la excepción de Quake III, el cual salió a la venta en diciembre. La GeForce 256 podía renderizar triángulos con soporte de T&L en hardware, todo esto capaz de trabajar en conjunto con un rendimiento igual o mayor a 10 millones de polígonos por segundo.

El año 2000 fue realmente “el año de nVidia“. En diciembre, nVidia adquirió los activos intelectuales de su alguna vez competidor 3DFX. Este es un buen recordatorio de que tan rápido cambian las cosas en la industria. ATI se estaba volviendo fuerte y Matrox había anunciado nuevos productos, pero sobre todos ellos, claramente nVidia se había convertido en el estándar para el cómputo en casa. En el 2001 nVidia continuó dominando el mercado con una competencia ocasional por parte de ATI.

Nintendo lanzó el Gamecube en septiembre de 2001, al igual que el Gameboy Advance. Pero probablemente el gran evento del 2001 fue el lanzamiento de la consola Xbox de Microsoft. Con un procesador gráfico desarrollado por nVidia, disco duro, CPU Intel y más, fue diseñada para ganarles a sus principales competidores que serían el Playstation 2 y el Gamecube de Nintendo. El alguna vez tan influyente SEGA había dejado el negocio del hardware y ahora se concentraba en el software.
El mundo de la cinematografía también se vio beneficiado con estos avances y se puede ver en películas como Final Fantasy: The Spirits Within, tal vez el primer intento verdadero por crear humanos realistas en una película completamente generada por computadora.

Para la película Spider-Man 3 de 2007 Sony Pictures Imageworks (SPI) usó el software Autodesk Maya para la animación en 3D, el modelado, texturizado y combinación de movimientos de los personajes y efectos visuales aproximadamente en 80% de las tomas realizadas por el estudio. Se usó el sistema de efectos visuales Autodesk Flame para hacer cambios en el rostro de los personajes y para integrar tomas reales de ellos en ambientes generados totalmente por computadora. El uso de ese software también fue decisivo para crear la secuencia extremadamente compleja de Sandman y la sustancia simbiótica de Venom.

1 comentario:

  1. Calcular la trayectoria de proyectiles y realizar operaciones matemáticas.

    Me confundes como que densidades de neutrones trasversale? si En 1,5 segundos era capaz de calcular la potencia 5000 de un número de 5 cifras.
    ENIAC podía resolver 5000 sumas o 300 multiplicaciones en 1 segundo.

    ResponderEliminar