lunes, 11 de noviembre de 2019

Unidad 5

5.1 HISTORIA, EVOLUCIÓN Y APLICACIÓN DE LA ANIMACIÓN


La historia de la animación por computadoras empieza a finales de 1940 y principios de 1950 con los primeros experimentos con gráficos por computadora, entre ellos destacando John Whitney - pero no fue sino hasta principios de 1960 que las computadoras comenzaron a volverse populares cuando nuevos enfoques en los gráficos computacionales prosperaron.

Ivan Sutherland es considerado el creador de las gráficas computacionales interactivas y pionero de Internet. Trabajó para el laboratorio Lincoln en el MIT (Massachusetts Institute of Technology) en 1962, donde desarrollo un programa llamado Sketchpad I, el cual permitía a un usuario interactuar directamente con una imagen en pantalla, siendo ésta la primera Interfaz gráfica de usuario, y su programa es considerado como uno de los más influyentes de la historia.

En 1968, Ivan Sutherland unió esfuerzos con David Evans para fundar la compañía Evans & Sutherland — cuando ambos eran profesores en el Departamento de Ciencias Computacionales en la Universidad de Utah, con el objetivo de crear un nuevo hardware diseñado para correr los sistemas desarrollados en la Universidad. Muchos de estos algoritmos dieron paso a equipos como el Geometry Engine, el Head-mounted display, el framebuffer, y simuladores de vuelo.  Muchos de los empleados eran estudiantes activos o ex alumnos, entre ellos Jim Clark, quien fundó Silicon Graphics en 1981, Ed Catmull, co-fundador de Pixar en 1979, y John Warnock de Adobe Systems en 1982.

El primer largometraje en utilizar el procesamiento de imágenes digitales fue en 1973 con Westworld, una película de ciencia ficción escrita y dirigida por el novelista Michael Crichton, en la cual varios robots humanoides conviven con los humanos para proveerlos de entretenimiento.

El control de movimientos de cámara o Motion control photography es una técnica que requiere de una computadora para grabar (o seguir) el movimiento exacto de una cámara en una toma específica, con el propósito de recrear nuevamente tal movimiento, ya sea en otra computadora; y en conjunto con los datos de movimiento de diversas fuentes, como por ejemplo elementos CGI. 


A inicios de la década del 2000 comenzó la cinematografía virtual, siendo consideradas las películas Matrix Reloaded y Matrix Revolutions las primeras que contaron con un diseño tan convincente que era difícil distinguir si en una escena había actores reales tomados con una cámara convencional o modelos 3D con simulaciones de cámara. Esto fue en parte a que algunas escenas se reconstruyeron y se trabajaron dentro de un ambiente virtual; como la escena de la pelea final entre Neo y el Agente Smith, la cual si hubiese sido filmada únicamente con pantallas verdes, hubiese tomado mucho tiempo para una escena de pocos minutos.



5.2 Tipos de animación 2D

Animación 2D: En este tipo de animación sólo pueden moverse horizontalmente (movimientos hacia adelante y hacia atrás) y verticalmente (movimientos hacia arriba y hacia abajo). Los objetos son planos, como en una fotografía.

Tipos

5.2.1 Tweening
Es un término usado específicamente para las técnicas tradicionales de animación.


5.2.2 Morphing

En el morphing de imágenes se utilizan dos efectos básicos; la deformación de la imagen, redistribuyendo sus colores y formas, y el fundido de dos imágenes, pasando de forma continúa de una a otra. Ambos efectos parten de una descomposición del espacio de la imagen en una malla de triángulos. Para especificar un cambio continuo en la forma de la imagen basta con describir cómo varía la posición de los vértices de la malla de un instante de tiempo al instante posterior.
El morphing se produce automáticamente cuando se mueven los vértices sin alterar las coordenadas de textura originales.


5.2.3 Onion skinning
es una técnica de gráficación  2D utilizada en la creación de dibujos animados y películas de edición para ver varias imágenes a la vez. De esta manera, el animador o editor puede tomar decisiones sobre cómo crear o cambiar una imagen basada en la imagen anterior en la secuencia.







5.3 Tipos de animación 3D

Animación 3D: En este caso, los objetos también pueden moverse más cerca o más lejos de la persona que ve la animación. Tiene un nivel de calidad y detalle que lo vuelve muy cercano a las imágenes de la realidad, en algunos casos haciéndose imperceptible la diferencia entre la animación y un objeto real.

5.3.1 Cel-Shaded

Es un tipo de renderización no fotorrealista diseñada para hacer que los gráficos por computadora parezcan dibujados a mano. Las sombras planas se usan comúnmente para imitar el estilo de los cómics o dibujos animados.



5.3.2 Morph

En este caso no se trata de modificar una imagen sino la forma del objeto en tres dimensiones. Este cambio continuo puede utilizarse en animación para representar deformaciones o crear efectos visuales. Otro uso, más técnico, consiste en suavizar las transiciones entre diferentes representaciones de un mismo objeto cuando éstas tienen diferente nivel de detalle.



5.3.3 Skeletal
Se crea una representación simplificada del cuerpo del personaje, análogo a un esqueleto o a un stickman.  En personajes humanos y animales, muchas partes del modelo de esqueleto corresponden a la ubicación real de los huesos, pero la animación del modelo de esqueleto skeletal animation es también utilizada para animar otras cosas, como expresiones faciales.




5.3.4 Motion Capture

La captura de movimiento (del inglés motion capture, o motion tracking, también abreviada mocap) es una técnica de grabación de movimiento, en general de actores y de animales vivos, y el traslado de dicho movimiento a un modelo digital, realizado en imágenes de computadora.




5.4 Animación 2D o 3D controlada por el usuario.


La animación por computadora (también llamada animación digital, animación computarizada, animación informática o animación por ordenador) es la técnica que consiste en crear imágenes en movimiento mediante el uso de una computadora (máquina también llamada, a veces, «ordenador»). Un programa bastante utilizado para hacer este tipo de animaciones es Blender; esta se utilizó para hacer la animación de la derecha. Cada vez más los gráficos creados son en 3D, aunque los gráficos en 2D todavía se siguen usando ampliamente para conexiones lentas y aplicaciones en tiempo real que necesitan renderizar rápido. Algunas veces el objetivo de la animación es la computación en sí misma, otra puede ser otro medio, como los diagramas de infografía, una película o un videojuego. Los diseños se elaboran con la ayuda de programas de diseño, modelado y por último renderizado.
Para crear la ilusión del movimiento, una imagen se muestra en pantalla sustituyéndose rápidamente por una nueva imagen en un fotograma diferente. Esta técnica es idéntica a la manera en que se logra la ilusión de movimiento en las películas y en la televisión.



VIDEO


miércoles, 30 de octubre de 2019

Relleno, iluminación y sombreado


Mapa conceptual de la Unidad 4


4.1 Relleno de polinomios



     Polígono es una figura básica  dentro de las representaciones y tratamiento de imágenes bidimencionales y su utilización es muy interesante para modelar objetos del mundo real.
     En un sentido amplio, se define como una región del espacio delimitada por  un conjunto de lineas (aristas) y cuyo interior puede estar rellenado por un color o patrón dado.
   
CASOS DE RELLENO SEGÚN SU COMPLEJIDAD
  El caso mas sencillo de relleno es el triangulo.
  Luego sigue el relleno de polígonos convexos de N-lados.
  Relleno de polígonos cóncavos.



MÉTODO DE RELLENO DE POLÍGONOS CON  COLOR


  • SCAN-LINE



  • INUNDACIÓN

  • FUERZA BRUTA




SCAN-LINE



  Fila a fila van trazando lineas de color entre aristas.

  • para scan-line que cruce el polígono se busca en la intersección entre las lineas de barrido y las aristas del polígono.
  • Dichas intersecciones se ordenan y se rellenan a pares.


LINEA DE BARRIDO

     Es valido para polígonos cóncavos como convexos. Incluso para si el objeto tiene huecos interiores.
     Funcionan en el trozo de lineas horizontales, denominadas lineas de barridos, que intersectan un numero de veces, permitiendo a partir de ella identificar los puntos que se consideran interiores al polígono.

INUNDACIÓN

  • Empieza en un interior y pinta hasta encontrar la frontera del objeto.
  • Partimos de un punto inicial (x,y), un colo de relleno y  un color de frontera.
  •  El algoritmo va testeando los píxeles vecinos a los ya pintados, viendo si son frontera o no.
  • No solo sirven para polígonos, sino para cualquier área curva para cualquier imagen AE se usan los programas de dibujo.


FUERZA BRUTA

  • Calcula una caja contenedora del objeto.
  • Hace un barrido interno de la caja para comprobar c/pixel este dentro del polígono.
  • Con polígonos simétricos basta con que hagamos un solo barrido en una sección y replicar los demás pixeles.
  • Requiere aritmética punto-flotante, esto lo hace preciso y costoso.



4.1.1 COLOR HOMOGENEO

Lo homogéneo aparece como un todo uniforme, donde los elementos que lo componen se muestran indiferenciados, usándose en varios contextos:

En Química, los compuestos, son combinaciones con perfecta homogeneidad en sus elementos. Esta homogeneidad designa la propiedad de los cuerpos de presentar iguales características tanto físicas como químicas en la totalidad de sus partes. Un ejemplo puede ser el agua, integrada por oxígeno e hidrógeno, totalmente indiferenciados ambos elementos en el compuesto que forman.

Cuando dos componentes se encuentran unidos en un sistema material pero sin unión química, por lo cual cada componente mantiene su identidad, se conforma lo que se conoce como mezcla, las que pueden ser homogéneas o heterogéneas. En las primeras los componentes a simple vista no pueden reconocerse en su individualidad. Pueden citarse como ejemplos de mezclas homogéneas las del agua con el jugo de limón, la de la leche con agua, o la del agua con el cloro.
La homogeneidad también puede predicarse del color: “Pintemos toda la vivienda de un color homogéneo para poder retocar los defectos con mayor facilidad, guardando un poco de pintura”, "Si quieres preparar un color diferente mezclando dos o más tonos, trta de revolver bien la pintura para que quede homogénea"; o de los estilos: “La casa de mi madre está toda decorada en estilo inglés de modo homogéneo”.




4.1.2 COLOR DEGRADADO

un degradado (o un gradiente de color) es un rango de colores ordenados linealmente con la intención de dar visualmente una transición suave y progresiva entre dos o más colores.1​La mayoría de programas informáticos de retoque fotográfico permiten realizar de forma sencilla degradados con los que rellenar formas y contornos.

En el software informático, los degradados se constituyen mediante una progresión de colores que operan en el espacio de color (RGB o CMYK habitualmente) desde el primero hasta el segundo, en los que se va reduciendo progresivamente el porcentaje del primer color y se va aumentando proporcionalmente en la misma medida el porcentaje del segundo color.

También es posible generar degradados en el canal alfa, lo que permiten una transición de un color sólido cualquiera a una transparencia.

DEGRADADO AXIAL

Un degradado de color axial (también conocido como degradado lineal) viene definido por dos puntos y un color en cada punto. El rango de colores a lo largo de la recta imaginaria que pasa por esos puntos se calcula usando interpolación lineal, extendiéndose por la línea.
En los programas informáticos de imagen digital, los colores se interpolan típicamente en un espacio de color RGB, a menudo usando comprensión gamma.
Los navegadores de internet modernos, así como las tecnologías CSS y SVG,2​permiten generar en una página web degradados lineales automáticamente sin necesidad de recurrir a un software fotográfico


DEGRADADO RADIAL

Los colores intermedios son calculados mediante interpolación linear basándose en la distancia de dicho color al centro del círculo.
Las tecnologías web CSS y SVG más recientes también permiten generar automáticamente degradados radiales sin necesidad de utilizar programas de retoque fotográfico externos


4.1.3 MATERIAL Y TEXTURA

En realidad el diseño 3D no es más que la creación de vértices que forman caras y que después, de un modo u otro, se iluminarán de una forma artificial para conseguir la sensación de volumen. El complemento perfecto de un correcto modelado será una buena asignación de materiales y texturas. Sólo así conseguiremos que nuestra creación alcance una verdadera apariencia de tridimensionalidad obligando a esa luz virtual a reaccionar de forma distinta según el tipo de superficie a la que esté llegando. Tal y como si se tratara de la vida real conseguiremos una simulación de las cualidades superficiales de la materia (rugoso, satinado, mate... ) así como de sus cualidades pigmentarias (color).

Gracias a al tecnología interna del software podemos crear nuestras propias texturas, como madera o mármol, y también "pegar" imágenes sobre las mallas para conseguir texturas imposibles de lograr artificialmente (una imagen real en una televisión que aparece encendida, o un cuadro, en una diseño de interior).






4.2 MODELOS BÁSICOS DE ILUMINACION.

Entendemos por modelo de iluminación el cálculo de la intensidad de cada punto de la escena. 
En el cálculo de la intensidad de un punto intervienen: 
El tipo e intensidad de la fuente de luz 
El material del objeto 
La orientación del objeto con respecto a la luz 
El modelo más utilizado es el modelo de Phong. 


PROCESO DE ILUMINACIÓN....
Si un rayo de luz entra al ojo directamente de la fuente, se verá el color de la fuente.
Si un rayo de luz pega en una superficie que es visible al observador, el color visto se basará en la interacción entre la fuente y el material de la superficie: se verá el color de la luz reflejado de la superficie a los ojos. 


En término de gráfica por computadora, se reemplaza el observador por el plano de proyección, como se ve en la siguiente figura:



El recorte del plano de proyección y su mapeo a la pantalla significa un número particular de pixeles de despliegue. 
El color de la fuente de luz y las superficies determina el color de uno o mas pixeles en el frame buffer.
Se debe considerar solo aquellos rayos que dejan las fuentes y llegan al ojo del observador, el COP, después de pasar por el rectángulo de recorte.
Cuando la luz da en una superficie, parte se absorbe, y parte se refleja.


INTERACCIONES ENTRE LUZ Y MATERIALES.
Superficies especulares
Superficies Difusas
Superficies difusas perfectas
Superficies translucidas

MODELO DE ILUMINACIÓN PHONG.

Es un modelo empírico simplificado para iluminar puntos de una escena 
Los resultados son muy buenos en la mayoría de las escenas 
En este modelo, los objetos no emiten luz, sólo reflejan la luz que les llega de las fuentes de luz o reflejada de otros objetos 
El modelo usa cuatro vectores para calcular el color para un punto arbitrario p sobre la superficie. 
Si la superficie es curva, los cuatro vectores pueden cambiar según se mueve de punto a punto.

1.El vector n es la normal en p. 
2.El vector v tiene dirección de p al observador o COP. 
3.El vector l tiene dirección de una línea de p a un punto arbitrario sobre la superficie para una fuente de luz distribuida, o una fuente de luz de punto. 
4.El vector r tiene la dirección de un rayo perfectamente reflejado de l. La dirección de r está determinada por n y l.



4.3 TECNICAS DE SOMBREADO.

4.3.1 INTENSIDAD CONSTANTE....

En ciertas condiciones, un objeto con superficies planas puede sombrearse en forma realista utilizando intensidades de superficie constantes. en el caso donde una superficie se expone solamente a la luz ambiente y no se aplican diseños, texturas o sombras de superficie, el sombreado constante genera un a representación exacta de la superficie. 
Una superficie curva que se representa como un conjunto de superficies planas puede sombrearse con intensidades de superficie constante, si los planos se subdividen la superficie se hace lo suficientemente pequeños.

La siguiente figura muestra un objeto modelado con sombreado constante.


4.3.2 SOMBREADO DE GOURAUD...

Este esquema de interpolación de intensidad, creado por gouraud, elimina discontinuidades en intensidades entre planos adyacentes de la representación de una superficie variando en forma lineal la intensidad sobre cada plano de manera que lo valores de la intensidad concuerden en las fronteras del plano. en este método los valores de la intensidad a lo largo de cada línea de rastreo que atraviesan una superficie se interpolan a partir de las intensidades en los puntos de intersección de con la superficie.

La siguiente figura demuestra este esquema de interpolación.


El sombreado de phong primero interpola los vectores normales en los puntos limite de una línea de rastreo. puede hacerse mejoras a los modelos de sombreado de gouraud determinando la normal aproximada a la superficie en cada punto a lo largo de una línea de rastreo y calculando después la intensidad mediante el uso del vector normal aproximado en ese punto. 




4.3.3 SOMBREADO DE PHONG
  Este método creado por phong bui tuong también se conoce como esquema de interpolación de vector normal despliega toques de luz mas reales sobre la superficie y reduce considerablemente el efecto de la banda de mach.

El sombreado de phong primero interpola los vectores normales en los puntos limite de una línea de rastreo. Puede hacerse mejoras a los modelos de sombreado de gouraud determinando la normal aproximada a la superficie en cada punto a lo largo de una línea de rastreo y calculando después la intensidad mediante el uso del vector normal aproximado en ese punto. 






Programa 3D

Programa investigado




Programa modificado





jueves, 24 de octubre de 2019

Triangulo 3D


Graficación 3D

GRAFICACIÓN 3D

El término gráficos 3D por computadora (o por ordenador) se refiere a trabajos de arte gráfico que son creados con ayuda de computadoras y programas especiales. 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 tridimensionales.
  
Un gráfico 3D difiere de uno bidimensional 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 tridimensionales 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.




3.1 REPRESENTACIÓN Y VISUALIZACIÓN DE OBJETOS EN 3D

La representación tridimensional es conveniente cuando la visualización de una tercera magnitud, típicamente la elevación del terreno, resulta útil para la interpretación de los datos que se quieren mostrar. Se presentan a continuación algunos de los usos más comunes.


PROYECCIONES


Existen dos métodos básicos para proyectar objetos tridimensionales sobre una superficie de visión bidimensional. Todos los puntos del objeto pueden proyectarse sobre la superficie a lo largo de líneas paralelas o bien los puntos pueden proyectarse a lo largo de las líneas que convergen hacia una posición denominada centro de proyección. Los dos métodos llamados proyección en paralelo y proyección en perspectiva, respectivamente, se ilustran. En ambos casos, la intersección de una línea de proyección con la superficie de visión determinada las coordenadas del punto proyectado sobre este plano de proyección. Por ahora, se supone que el plano de proyección de visión es el plano z = 0 de un sistema de coordenadas del izquierdo.



PROYECCIÓN EN PARALELO


Una proyección en paralelo preserva dimensionar relativas de los objetos y esta es la técnica que se utiliza en dibujo mecánico para producir trazos a escala de los objetos en las dimensiones. Este método sirve para obtener vistas exactas de varios lados de un objeto, pero una proyección en paralelo no ofrece una presentación realista del aspecto de un objeto tridimensional.




PROYECCIÓN ORTOGONAL

La Proyección ortogonal es aquella cuyas rectas proyectantes auxiliares son perpendiculares al plano de proyección (o a la recta de proyección), estableciéndose una relación entre todos los puntos del elemento proyectante con los proyectados.

Existen diferentes tipos:

·                     Vista A: Vista frontal o alzado
·                     Vista B: Vista superior o planta
·                     Vista C: Vista derecha o lateral derecha
·                     Vista D: Vista izquierda o lateral izquierda
·                     Vista E: Vista inferior

·                     Vista F: Vista posterior



PROYECCIÓN OBLICUA. 


Es aquella cuyas rectas proyectantes auxiliares son oblicuas al plano de proyección, estableciéndose una relación entre todos los puntos del elemento proyectante con los proyectados.




3.2. FORMAS GEOMÉTRICAS TRIDIMENSIONALES (SUPERFICIES

PLANAS Y CURVAS).


Las transformaciones de los objetos, son la Posición, la Rotación y la Escala.

Determinan la ubicación en el la escena mediante coordenadas trigonométricas en los ejes de coordenadas  x, y y z. Se refieren a todo el objeto.  La manera más fácil de conseguir las transformaciones básicas (traslación, rotación, escalación, en general las transformaciones afines) es utilizando matrices de transformación.

Coordenadas homogéneas

Nos será útil sustituir las coordenadas (x, y) por las coordenadas (xh, yh, h), llamadas coordenadas homogéneas, donde:
x = xh/h,    y = yh/h
(xh, yh, h) = (h . x, h . y, h)

Expresar posiciones en coordenadas homogéneas nos permite representar todas las ecuaciones de transformación geométrica como multiplicaciones de matriz. Se representan las coordenadas con vectores de columna de 3 elementos y las operaciones de transformación se expresan como matrices de 3 por 3.

Matrices de transformación en 3D más comunes
Traslación
En la representación homogénea tridimensional de las coordenadas, se traslada un punto de la posición P = (x, y, z) a la posición P’ = (x’, y’, z’) con la operación de matriz
P’ = T x P
donde P y P’ son vectores columna como matrices, la matriz
T=1 0 0 tx
0 1 0 ty
0 0 1 tz
0 0 0 1
y tx, ty y tz especifican las distancias de traslación en x, y y z
x’ = x + tx
y’ = y + ty
z’ = z + tz