Taller 3

Shaders #

Objetivo #

X

Ambient Light
Luz ambiente # La luz ambiente no suele tener un punto de origen definido. Se puede ver como una iluminación en todas direcciones. implementación # Cada pixel del objeto es definido mediante la formula \[color = ambient * (uMaterialColor * uColor)\] Donde color es el color final del pixel ambient es la cantidad de luminosidad uMaterialColor es el color del pixel original uColor es el color de ambiente elegido "
Coloring
Color blending # Blending two colors is implemented by doing a component-wise multiplication between them " CODIGO: blend.frag precision mediump float; // uniforms are emitted from the sketch // https://p5js.org/reference/#/p5.Shader/setUniform uniform vec4 uMaterial1; uniform vec4 uMaterial2; void main() { gl_FragColor = uMaterial1 * uMaterial2; } Color blending with lightness # "
Image Processing
Image Processing # El procesamiento de imagenes es la manipulación de imagenes mediante procesos computacionales manejados por GPU y el uso de algoritmos que modifican las imagenes. En muchos de los casos se utilizan operaciones matematicas de nivel matricial para transformar los colores de las imagenes, o distorsionarlas como se lograria con efectos de amplificación. 1. Procesamiento # Ejercicio 1: Implemente una aplicacion para el procesamiento de imagenes / videos que soporte el uso de diferentes mascaras, incluyendo kernels de tamaño diferente a 3x3 y:
Non Euclidean Geometry
Non Euclidean Geometry # Se denomina geometría no euclidiana o no euclídea, a cualquier sistema formal de geometría cuyos postulados y proposiciones difieren en algún asunto de los establecidos por Euclides en su tratado Elementos. No existe un solo sistema de geometría no euclídea, sino muchos, aunque si se restringe la discusión a espacios homogéneos, en los que la curvatura del espacio es la misma en cada punto, en los que los puntos del espacio son indistinguibles, pueden distinguirse tres formulaciones​ de geometrías
Photomosaic
Fotomosaico # El fotomosaico es una imagen, retrato o fotografía que se divide por figuras geométricas, generalmente por cuadrados o rectángulos del mismo tamaño, esto con el fin de remplazar las mismas por otros retratos, fotografías o imágenes que concuerden con los colores promedio que encierran las figuras geométricas de la imagen original, logrando que al visualizar la imagen de un punto lejano se logre ver como la original , pero que al ver de un punto cercano o al hacer zoom se pueda percibir que se compone de otras imágenes.
Procedural Texturing
Procedural Texturing # Problem statement # El texturizado procedimental es un método para generar texturas superficiales utilizando procedimientos o algoritmos matemáticos. Esta tecnica tiene muchas ventajas como: el bajo costo de almacenamiento, la resolución ilimitada de texturas y el facil mapeo de texturas. Este metodo tiene varios usos como: crear efectos esteticos, aumentar el agarre mecanico, disminuir la resistencia aerodinamica y modelar superficies o representaciones volumétricas de elementos naturales como madera , mármol , granito , metal , piedra y otros.
Spatial Coherence
Spatial Coherence # Problem statement # La coherencia espacial es el efecto visual por el cual los colores percibidos tienden a variar de manera proporcional a la distancia dentro de una determinada región de interes en la escena. Background # Por otra parte desde la perspectiva de la fisica, la coherencia espacial es la relación cruzada entre dos puntos en una onda en todo momento. Además de tambien ser una fuerte correlación entre los campos electricos en diferentes lugares, los cuales oscilan de forma correlacionada incluso si la estructura temporal se complica por una superposición de diferentes componentes de frecuencia.
Texturing
Texturing # La texturizacion es el proceso por el cual una imagen o mapa de bits es mapeado sobre un objeto 3D o una superficie, esto se logra trabajando con los sistemas coorddenados de las figuras y de la textura, la cual mediante el shader y la GPU son procesados haciendo uso de GLSL y algunos paradigmas de programacion, como programacion en paralelo. 1. Visualizacion UV # La visualizacion UV nos permite mostrar una textura sobre un espacio particular.