miércoles, 30 de mayo de 2012


TECNICAS 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.







martes, 29 de mayo de 2012

CURVAS DE BEZIER


Este tipo de curvas fue desarrollado en 1960  por Pierre Bézier por encargo de la empresa de automóviles Renault que buscaba una representación matemática para definir las transiciones suaves en la curvatura de las líneas de sus automóviles.





Se generan a partir de funciones polinómicas de grado tres que permiten la representación de cualquier forma curvada y evitan la complicación innecesaria de cálculos matemáticos que se produciría usando polinomios de mayor grado.


Cualquier trazado de estas características está definido por una serie de puntos por los que pasa la curva y otros exteriores a ella que definen sus puntos de inflexión, es decir, aquellos en que cambia de curvatura, pasando de cóncava a convexa o viceversa.




lunes, 28 de mayo de 2012

COMPUTACION GRAFICA EN 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.



COMPUTACION GRAFICA EN 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).





VIDEO PARA VER CON GAFAS 3D 


MÉTODOS DE DESPLIEGUE TRIDIMENSIONAL 

Cuando modelamos y desplegamos una escena tridimensional, debemos tomar muchas consideraciones aparte de incluir sólo valores para la tercera dimensión. A fin de obtener un despliegue de una escena tridimensional que se modeló en coordenadas mundiales, primero debemos establecer una referencia de coordenadas para la “cámara” o referencia de coordenadas que define la posición y orientación para el plano de la película de la cama.

 • Proyección paralela.- Es método para generar una vista de un objeto sólido consiste en proyectar puntos en las superficie del objeto a lo largo de líneas paralelas sobre el punto de despliegue.





• Proyección de perspectiva.- Generar una vista de una escena tridimensional es proyectar puntos hacia el plano de despliegue a lo largo de trayectorias convergentes. Esto hace que los objetos que están más lejos de la posición de vista se desplieguen más pequeños que aquellos del mismo tamaño que se encuentran más cerca de la posición de vista. 



• Indicación de intensidad.- Con pocas excepciones, la información de la intensidad es importante para poder identificar con facilidad, para una dirección de vista en particular, cuál es el frente y cual es la parte de atrás de los objetos desplegado.



 • Hipertexto.- Se le llamó hipertexto por que permitía enlazar la información textual en formas no secuenciales. Un hipertexto contiene enlaces que conducen a los lectores rápidamente a otras partes del documento o a otros documentos relacionados.



 • Hyper card y los hiperclones.- El hipertexto fue objeto de la atención pública en 1987, cuando apple introdujo hypercard, un programa híbrido, parte base de datos, parte programa de dibujo, parte sistema de gráficos para presentaciones y parte lenguaje de programación. hypercard fue la primera herramienta disponible en forma general para crear documentos del tipo hipertexto. 




Un documento de hypercard puede contener textos, números gráficos, animación, efectos de sonido, música y hasta segmentos de vídeo. Un documento de hypercard, denominado pila se basa en tarjetas de referencia. Cada pantalla, llamada tarjeta, puede contener gráficos, textos y botones: “puntos vivos” que responden a los clics de ratón. Los botones también se pueden programar para producir música abrir ventanas de diálogo, iniciar otras aplicaciones, reacomodar información efectuar operaciones de menú, enviar mensajes a otros dispositivos de hardware o hacer otras cosas.


 • Multimedia interactivos.- El uso de una combinación de textos gráficos, animación, vídeo, música y efectos de sonido para comunicarse. a la cantidad de información que puede transmitir un medio por unidad de tiempo se le denomina ancho de banda. un libro que sólo contiene texto es un medio de ancho de banda pequeño, que solo puede proporcionar unos 300 bits de datos por segundo al lector corriente. 


• Técnicas de modelaje procedurales.- Las técnicas procedurales más conocidas son las siguientes: fractales, figuras geométricas fragmentadas, donde cada una de las partes conserva una relación de similaridad con la figura completa. Los fractales también pueden ser usados en áreas menos abstractas, como el modelamiento de árboles, nubes, montañas, medición de longitud de las líneas costeras, y en general, cualquier hecho que no sea posible de representar mediante variables geométricas clásicas o euclidianas.



 • Aplicaciones de los fractales.- Los avances tecnológicos que han ocurrido desde que se formularon las primeras ideas de ecuaciones referentes y otras teorías matemáticas complejas, han permitido llevar a la práctica muchos conceptos.


TIPOS DE GRÁFICOS


Es importante tener esto en mente para saber que tipo de gráficas puede desplegar nuestro sistema de cómputo. Los archivos de gráficas tienen extensiones específicas. Una extensión de archivo de gráfica define el estándar que fue utilizado para hacer que la computadora pueda leer la imagen. Existen muchos formatos de imágenes o estándares los más comunes son GIF y JPEG.


• GIF. Son las siglas de Graphic Interchange Format y es el formato estándar para imágenes que fue desarrollado por Compu Serve para que fuera un método independiente de hardware para el almacenamiento de imágenes. GIF permite gráficas de alta resolución y alta calidad que pueden desplegarse en una gran variedad de sistemas de vídeo. GIF esta dirigido a sistemas de video baratos, dado que solo puede almacenar 8 bits por píxel (256 o menos colores) y casi todas las PC’s no pueden desplegar más de 256 colores en una pasada. GIF es bueno para imágenes con solo unos cuantos colores distintos, como dibujos de líneas y caricaturas simples.


 • GIF’s Animados. Un GIF Animado es creado utilizando el formato GI F89a Contiene un conjunto de marcos, para una secuencia de imágenes GIF que pueden desplegarse una detrás de otra, o en un ciclo, así que se puede ver las imágenes en movimiento. Un GIF animado tiene la misma extensión que un GIF sin movimiento (.GIF).Lo que hace al GIF animado especial es que no se tiene que instalar otras aplicaciones en el Navegador de Internet para auxiliar en el despliegue. Actualmente la mayoría de los navegadores de Internet permiten el despliegue de GIF’s animados.


 • GIF’s Transparentes. Un GIF transparente es una imagen GIF con un fondo transparente. Cuando se ve una imagen transparente en el navegador de Internet, se puede observar el fondo del navegador a través del fondo de la imagen, en cualquier color que se elija como el color base del navegador o la imagen que se utilice como fondo. El formato de GIF Transparente permite el navegador de Internet desplegar imágenes de muchas formas, no solo cuadradas o rectangulares que se puedan crear en la mayoría de los editores de gráficos. Un GIF transparente tiene la misma extensión (.GIF) de una imagen en formato GIF normal. 


• JPEG es un mecanismo estandarizado de compresión de imágenes. JPEG son las siglas para Joint Photographic Experts Group, el nombre original del comité que escribió el estándar. JPEG esta diseñado para comprimir ya sea imágenes a color o en escala de gris de escenas naturales y realistas. Funciona muy bien en fotografías, arte realista y material similar; no tan bien en letreros, caricaturas simples, o dibujos de líneas. JPEG almacena información de color total: 24 bits/píxel (16 millones de colores). De tal manera que con hardware de color completo, las imágenes JPEG lucen mucho mejor que las GIF en el mismo hardware. Los archivos JPEG son más pequeños que los GIF


. • BMP Es la extensión de los archivos bitmap, También llamados RASTER GRAPHICS, son la representación consistente en filas y columnas de puntos de una imagen gráfica en una computadora. 



• CGM Formato de gráfico de vectores Computer Grafhics Metafile




• PCX Formato para almacenar imágenes BITMAP 


• TIFF Tagged Image File Format . Formato muy comúnmente utilizado para transferir imágenes tipo bitmap de una aplicación a otra.
                     TRANSFORMACIONES GEOMÉTRICAS BIDIMENSIONALES


Aquí estudiamos primero los procedimientos generales para aplicar parámetros de traslación, rotación y escalación para cambiar la posición y el tamaño de los objetos bidimensionales. Traslación.- Se aplica una transformación en un objeto para cambiar su posición a lo largo de la trayectoria de una línea recta de una dirección de coordenadas a otra. Convertimos un punto bidimensional al agregar las distancia de traslación, tx y ty a la posición de coordenadas original (x, y) para mover el punto a una nueva posición (x’, y’) El par de distancia de traslación (tx’ ty’) se llama vector de traslación o vector de cambio. Rotación.- Se aplica una rotación bidimensional en un objeto al cambiar su posición a lo largo de la trayectoria de una circunferencia en el plano de x y. 




Para generar una rotación especificamos un ángulo de rotación y la posición Xr’ Yr’ del punto de rotación o punto pivote en torno al cual se gira el objeto. Escalación.- Una transformación de escalación altera el tamaño de un objeto. Se puede realizar esta operación para polígonos al multiplicar los valores de coordenadas (x, y) de cada vértice por los factores de escalación sx y sy para producir las coordenadas transformadas (x’, y’). El factor de escalación sx escala objetos en la dirección de x, mientras que el factor de escalación sy lo hace en la dirección de y. Cuando se asignan el mismo valor a sx y sy’ se general una escala uniforme. Y cuando se asignan valores distintos a sx y sy se obtiene un escala diferencial. Podemos encontrar la localización de un objeto escalonado al seleccionar una posición llamada punto fijo, que debe permanecer sin cambio después de la transformación de escalación.



COMPUTACION GRAFICA

La computación gráfica es la rama de las ciencias de la computación que se encarga del estudio, diseño y trabajo del despliegue de imágenes en la pantalla de un computador a través de las herramientas proporcionadas por la física, la óptica, la térmica, la geometría, etc.





APLICACIONES

Está rama de computación es utilizada en:

• Ingeniería.- Las actividades de ingeniería pueden dividirse en cinco áreas: diseño, análisis, dibujo, fabricación/construcción/procesamiento y control de calidad.

• Ciencias.- Los científicos pueden emplear las gráficas por computadora de muchas maneras.

• Arte.- El artista siempre ha podido escoger los medios de expresión adecuados para su talento. Las gráficas por computadora son otro medio del que dispone para ampliar su libertad de expresión.

• Educación.- El beneficio más grande que a aporta las computadoras y las gráficas que realizan en un 
ambiente educativo. En cuanto a capacitación se diseñan sistemas especiales.