sábado, 15 de agosto de 2009

Hechos historicos de la computacion grafica

1) El primer video juego de la historia fue desarrollado por Willian Higinbotman en 1958 y fuellamado "Tenis for two".

2) Xerox Alto: El Xerox Alto, desarrollado en el Xerox PARC en 1973, fue el primer ordenador personal, así como el primero que utilizó la metáfora de escritorio y una interfaz gráfica de usuario.

3) En 1975 Martin Newell desarrolla una versión gráfica de la tetera de Utah, la que llega a ser un ícono de la Computación Gráfica. Por años ha sido utilizada por investigadores para probar nueva tecnología.

4) En 1982 La computación gráfica juega su primer rol principal en una película. TRON de Disney.

5) En 1983 Autodesk introduce el primer software CAD para computadores personales.

Razones por las cuales un profesional debe saber computacion grafica


1)- Competencia laboral: En el campo laboral un profesional esta mejor preparado para responder ante diferentes exigencias si conoce suficiente sobre computacion grafica, tanto de manera teorica como de manera practica, siendo esta ultima fundamental.


2)- Estetica: Cuando se diseña in producto sotfwarwe que incluye computacion grafica el diseño estetico es fundamental, tener bases adecuadas respecto a computacion grafica permite tener certeza que se puede ofrecer un producto estetico y bien eleborado.


3)- Satisfaccion personal: Es inportante autoevaluarse como profesional, y cuando somos concientes de nuestras fortalezas sobre computacion grafica sabemos que somos aptos para desempeñar adecuadamente nuestra labor y evitamos pensar en un a carrera profesional mediocre.


Innovacion: Sempre que se conoce de diversos temas se puede lograr adelantarse a los requerimientos del mercado, la computacion grafica es fundamental cuando de implementar novedadades de trata.

Usos de la computacion grafica

1) - Imagen generada por computadora.

Imagen generada por computadora (CGI), es la aplicación del campo de gráficos realizados por computadoras (CG, o más expresamente, gráficos 3d por computadora u ordenador) para la creación, entre muchas otras cosas, de efectos especiales.
El término para el que se emplean las siglas "CGI" corresponde con el término español "Infografía".
El CGI es usado en películas, programas de televisión y publicidad, y en medios impresos. Los videojuegos más a menudo usan los gráficos realizados por computadora en tiempo real (raramente tratado como CGI), pero también pueden incluir "escenas de corte pre-elaborados" e introducciones de películas que serían aplicaciones CGI típicas, llamadas Full motion Video o por sus siglas FMV.
En el cine y la televisión, el CGI se usa a menudo porque es, para ciertas situaciones, más barato que utilizar métodos físicos, como la construcción de miniaturas complicadas para creación de efectos, o alquiler de mucho vestuario para escenas de multitudes de personas, y también porque permite la creación de imágenes que no serían factibles de ningún otro modo. Esto también puede permitir que un artista produzca el contenido sin el uso de actores u otros participantes típicos en estos proyectos.



2)-Animación

La animación es aquella cosa para dar sensación de movimiento a imágenes o dibujos. Para realizar animación existen numerosas técnicas que van más allá de los familiares dibujos animados. Los cuadros se pueden generar dibujando, pintando, o fotografiando los minúsculos cambios hechos repetidamente a un modelo de la realidad o a un modelo tridimensional virtual; también es posible animar objetos de la realidad y actores.
Concebir animación tiende a ser un trabajo muy intensivo y tedioso. Por esto la mayor parte de la producción proviene de compañías de animación que se han encargado de organizar esta labor. Aun así existe la animación de autor (que tiene relación con la animación independiente), en general más cercana a las artes plásticas. Ésta surge del trabajo personal de uno o de unos pocos artistas. Algunos se valen de las nuevas tecnologías para simplificar la tarea. Se comienza el proceso de animación al hacer un modelo del personaje o la cosa que se va a animar. Este modelo puede ser un dibujo, o puede ser también en plastilina.


3)-Gráfico vectorial

Una imagen vectorial es una imagen digital formada por objetos geométricos independientes (segmentos, polígonos, arcos, etc.), cada uno de ellos definido por distintos atributos matemáticos de forma, de posición, de color, etc. Por ejemplo un círculo de color rojo quedaría definido por la posición de su centro, su radio, el grosor de línea y su color.
Este formato de imagen es completamente distinto al formato de los gráficos rasterizados, también llamados imágenes matriciales, que están formados por pixeles. El interés principal de los gráficos vectoriales es poder ampliar el tamaño de una imagen a voluntad sin sufrir el efecto de escalado que sufren los gráficos rasterizados. Asimismo, permiten mover, estirar y retorcer imágenes de manera relativamente sencilla. Su uso también está muy extendido en la generación de imágenes en tres dimensiones tanto dinámicas como estáticas.
Todos los ordenadores actuales traducen los gráficos vectoriales a gráficos rasterizados para poder representarlos en pantalla al estar ésta constituida físicamente por píxeles




4) -Renderización

La renderización es el proceso de generar una imagen desde un modelo. Los medios por los que se puede hacer un renderizado van desde lápiz, pluma, plumones o pastel, hasta medios digitales en dos y tres dimensiones. La palabra renderización proviene del inglés render, y no existe un verbo con el mismo significado en español, por lo que es frecuente usar las expresiones renderizar o renderear.
En términos de visualizaciones en una computadora, más específicamente en 3D, la "renderización" es un proceso de cálculo complejo desarrollado por un ordenador destinado a generar una imagen 2D a partir de una escena 3D. La traducción más fidedigna es "interpretación", aunque se suele usar el término inglés. Así podría decirse que en el proceso de renderización, la computadora "interpreta" la escena en tres dimensiones y la plasma en una imagen bidimensional.
La renderización se aplica en la computación gráfica, más comúnmente a la infografía. En infografía este proceso se desarrolla con el fin de imitar un espacio 3D formado por estructuras poligonales, comportamiento de luces, texturas, materiales (agua, madera, metal, plástico, tela, etcétera) y animación, simulando ambientes y estructuras físicas verosímiles. Una de las partes más importantes de los programas dedicados a la infografía son los motores de renderizado, los cuales son capaces de realizar técnicas complejas como radiosidad, raytrace (trazador de rayos), canal alfa, reflexión, refracción o iluminación global.
Cuando se trabaja en un programa de diseño 3D por computadora, normalmente no es posible visualizar en tiempo real el acabado final deseado de una escena 3D compleja ya que esto requiere una potencia de cálculo demasiado elevada, por lo que se opta por crear el entorno 3D con una forma de visualización más simple y técnica y luego generar el lento proceso de renderización para conseguir los resultados finales deseados. El tiempo de render depende en gran medida de los parámetros establecidos en los materiales y luces, así como de la configuración del programa de renderizado.
Normalmente cada aplicación de 3D cuenta con su propio motor de renderizado, pero cabe aclarar que existen plug-ins que se dedican a hacer el cálculo dentro del programa utilizando fórmulas especiales. En el caso de los videojuegos, normalmente se utilizan imágenes pre-rendereadas para generar las texturas y así ayudar al procesador de la consola a trabajar en el entorno virtual con mucha más fluidez.


5)- Proyección


La proyección gráfica es una técnica de dibujo empleada para representar un objeto en una superficie. La figura se obtiene utilizando líneas auxiliares proyectantes que, partiendo de un punto denominado foco, reflejan dicho objeto en un plano, a modo de sombra.Tambien es la representacion que por medio de proyectantes que partiendo del observador inciden en un plano,esta puede ser :conica(central o en perspectiva) o paralela
Los elementos principales de la proyección son –como muestran las figuras– el punto de vista o foco de proyección (V), el punto que se desea proyectar (A), el punto proyectado (A'), la línea proyectante (VAA') y el plano sobre el que se proyecta, que recibe diferentes denominaciones como plano de proyección, plano de cuadro o plano imagen .

Gráfico rasterizado

Una imagen rasterizada, también llamada bitmap, imagen matricial o pixmap, es una estructura o fichero de datos que representa una rejilla rectangular de pixeles o puntos de color, denominada raster, que se puede visualizar en un monitor de ordenador, papel u otro dispositivo de representación.
A las imágenes rasterizadas se las suele caracterizar técnicamente por su altura y anchura (en pixels) y por su profundidad de color (en bits por pixel), que determina el número de colores distintos que se pueden almacenar en cada pixel, y por lo tanto, en gran medida, la calidad del color de la imagen.
Los gráficos rasterizados se distinguen de los gráficos vectoriales en que estos últimos representan una imagen a través del uso de objetos geométricos como curvas de Bézier y polígonos, no del simple almacenamiento del color de cada pixel. El formato de imagen matricial está ampliamente extendido y es el que se suele emplear para tomar fotografías digitales y realizar capturas de vídeo. Para su obtención se usan dispositivos de conversión analógica-digital, tales como escáneres y cámaras digitales.
Articulo en ingles.


In computer science, image processing is any form of signal procesignal processing for which the input is an image, such as photographs or frames of video; the output of image processing can be either an image or a set of characteristics or parameters related to the image. Most image-processing techniques involve treating the image as a two-dimensional signal and applying standard signal-processing techniques to it. Image processing usually refers to digital image processing, but optical and analog image processing are also possible. This article is about general techniques that apply to all of them. The acquisition of images (producing the input image in the first place) is referred to as imaging.

Traduccion al español.

En ciencias de la computación, procesamiento de imagen es cualquier forma de procesamiento de elementos graficos, como fotografías o imágenes de video, la salida de procesamiento de imagen puede ser una imagen o un conjunto de características o parámetros relacionados con la imagen . La mayoría de las técnicas de procesamiento de imágenes implican el tratamiento de la imagen como una señal de dos dimensiones estándar y la aplicación de técnicas de procesamiento de señal a la misma. Por lo general se refiere al procesamiento de imagen digital, analógico y óptico.

La adquisición de imágenes (que producen la imagen de entrada, en primer lugar) se le conoce como imaging.

Computacion grafica

El término gráficos 3D por computadora o por ordenador (en inglés 3D computer graphics) se refiere a trabajos de arte gráfico que fueron creados con ayuda de computadoras y programas especiales 3D. En general, el término puede referirse también al proceso de crear dichos gráficos, o el campo de estudio de técnicas y tecnología relacionadas con los gráficos 3D.
Un gráfico 3D difiere de uno 2D principalmente por la forma en que ha sido generado. Este tipo de gráficos se originan mediante un proceso de cálculos matemáticos sobre entidades geométricas tridimensionales producidas en un ordenador, y cuyo propósito es conseguir una proyección visual en dos dimensiones para ser mostrada en una pantalla o impresa en papel.
En general, el arte de los gráficos 3D es similar a la escultura o la fotografía, mientras que el arte de los gráficos 2D es análogo a la pintura. En los programas de gráficos por computadora esta distinción es a veces difusa: algunas aplicaciones 2D utilizan técnicas 3D para alcanzar ciertos efectos como iluminación, mientras que algunas aplicaciones 3D primarias hacen uso de técnicas 2D.

Computacion grafica



Introduccion

En la actualidad, los gráficos por computador se emplean en una gran variedad de aplicaciones, como en interfaces gráficas de usuario, tipografía digital, paseos arquitectónicos virtuales, aplicaciones médicas y juegos de vídeo, entre otras. La computación gráfica comprende una gran variedad de técnicas que pueden ser agrupadas de acuerdo al número de dimensiones que se empleen en la representación del modelo geométrico a visualizar, en 2D y 3D.

Computación gráfica 2D

La computación gráfica 2D corresponde al conjunto de técnicas que tienen como objeto la generación de una imagen digital a partir de modelos geométricos bidimensionales. Estas técnicas son principalmente empleadas en interfaces gráficas de usuario (ver siguiente Sección) y en aplicaciones desarrolladas a partir de tecnologías de impresión y dibujo, como tipografía, cartografía y dibujo técnico, entre otras. El origen de las mismas se remonta a la década de los 50's en la que aparecieron dispositivos con soporte para gráficos vectoriales.Los gráficos vectoriales y de rasterización conforman las principales categorías de la computación gráfica 2D. Aquellos emplean primitivas geométricas basadas en ecuaciones matemáticas (e.g., puntos, líneas, curvas y polígonos) para representar las imágenes; mientras que en éstos, la imagen se representa mediante una matriz rectangular de píxeles que puede ser desplegable en un dispositivo de salida cualquiera.

Interfaces gráficas

Una interfaz gráfica permite al usuario interactuar gráficamente (de modo visual) con distintos dispositivos electrónicos, como PCs, PDAs, etc. Las interfaces gráficas, en contraste con las textuales, ofrecen elementos gráficos (i.e., indicadores visuales) que sirven para representar las acciones de la aplicación disponibles al usuario. Dichas acciones son usualmente ejecutadas mediante la manipulación directa de los elementos gráficos presentes en la interfaz. Por razones históricas, el dominio de las interfaces gráficas se encuentra restringido al espacio bidimensional.Debido al advenimiento del software libre, en la última década se ha dado una gran proliferación y desarrollo de paquetes de interfaces gráficas. Entre los más destacados se tienen los siguientes: Qt, Wxwidgets, GTK+, Motif, XForms, FLTK.

Computación gráfica 3D

La computación gráfica 3D trata acerca de la síntesis de una imagen bidimensional a partir de un modelo geométrico tridimensional. De acuerdo con la complejidad de los cálculos empleados en la generación de las imágenes, las técnicas se clasifican en prerendering y real-time rendering. Aquellas son típicamente empleadas en la creación de animaciones de tipo foto-realista; mientras que éstas se emplean en aplicaciones que requieren interactividad. En el último caso, es necesario el uso de un procesador de gráficos dedicado (en la actualidad, ampliamente disponibles para el usuario común).

Técnicas de rendering

De acuerdo al modo en el que la luz se modele, las técnicas de rendering se clasifican en las siguientes categorías:

Rasterización: Este método consiste en iterar en cada cuadro a través de todas las primitivas geométricas que conforman la escena para determinar, a partir del punto de vista del usuario, cuales píxeles de la imagen se ven afectados. Por ser el método de rendering más ampliamente empleado por la mayoría de GPUs en la actualidad, este método es el más eficiente y por ello es el predilecto cuando la aplicación requiere interactividad.

Ray-tracing: El ray tracing es una extensión del ray-casting. Mientras que en el ray-casting el color de cada píxel de la imagen se calcula como el color del primer objeto intersecado por un rayo imaginario que se lanza desde el punto de vista, al píxel en cuestión; en el ray-tracing se emplea esta técnica de modo recursivo, i.e., empleando rayos de refracción y reflexión a partir del punto en la superficie del objeto intersecado por el rayo inicial. Usualmente este cómputo se realiza promediando un número aleatorio de muestras (rayos de luz emanados de la superficie de los objetos que intersecan el punto de vista) mediante técnicas de Monte Carlo.
Métodos de iluminación global: En estas técnicas se emplea la teoría de elementos finitos para simular el modo en que las superficies iluminadas actúan a su vez como fuentes de iluminación de otras superficies, produciendo una efecto más realista en el que el ambiente de la escena parece ser mejor captado.

Gracias al gran avance que recientemente ha tenido la tecnología presente en las GPUs, en la actualidad han surgido aplicaciones gráficas mediante las cuales es posible interactuar en tiempo real con una escena sintetizada mediante algún modelo de iluminación complejo, como el ray-tracing. Lo anterior es particularmente posible gracias al advenimiento de los shaders que permiten combinar algunos modelos de iluminación complejos, con los algoritmos básicos de rasterización.