TA159

Notas, resueltos y trabajos practicos de la materia Sistemas Gráficos
Index Commits Files Refs Submodules README LICENSE
commit 7000285c4444207722ea69891fe883938f27f661
parent 602e4b7cec2b127a1fb13305fdb2282071710349
Author: Martin Klöckner <mjkloeckner@gmail.com>
Date:   Mon, 27 May 2024 15:04:00 -0300

add `clases/2024-05-16-clase.md` and `clases/2024-05-24-clase.md`

Diffstat:
Aclases/2024-05-16-clase.md | 51+++++++++++++++++++++++++++++++++++++++++++++++++++
Aclases/2024-05-24-clase.md | 17+++++++++++++++++
2 files changed, 68 insertions(+), 0 deletions(-)
diff --git a/clases/2024-05-16-clase.md b/clases/2024-05-16-clase.md
@@ -0,0 +1,51 @@
+# Clase 16-05-24
+
+\tableofcontents
+
+## Efectos de post-procesado con `EffectComposer`
+
+* Se utiliza para aplicar filtros a una imagen ya generada
+* Ocurre al final del pipeline gráfico
+* Estos filtros por lo general utilizan información de profundidad del
+  `depthBuffer` en el cual se almacena la coordenada `z` de los objetos cuando
+  se proyectan en la imagen final
+* El rasterizador solo dibuja lo que pasa por el centro del pixel
+* Para el [efecto de blur](https://threejs.org/examples/?q=post#webgl_postprocessing_unreal_bloom)
+  se utiliza un filtro de convolución
+
+## Render to texture
+
+Se guarda el resultado de un render en una textura y luego se puede aplicar
+sobre un objeto
+
+## Partículas
+
+Las partículas se representan utilizando `sprites` los cuales son imágenes de 2D
+que siempre están de frente a la cámara
+
+## Shadow maps
+
+Se guarda una imagen del render en escala de grises con más precision de los
+normal, por lo general `float16` o `float32`. Luego la luz "ilumina" hasta una
+profundidad dada por el mapa de grises
+
+* Solo funciona con luces que tienen frustum
+
+## [Raycaster](https://threejs.org/docs/index.html?q=raycaster#api/en/core/Raycaster)
+
+Calcula la intersección entre un rayo y un objeto. Se puede utilizar para
+interacciones con el mouse, utilizando como rayo aquel que se origina en la
+cámara y atraviesa el cursor.
+
+```js
+// update the picking ray with the camera and pointer position
+raycaster.setFromCamera( pointer, camera );
+
+// calculate objects intersecting the picking ray
+const intersects = raycaster.intersectObjects( scene.children );
+```
+
+## [Web Audio](https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API)
+
+Se puede utilizar para simular sonidos tridimensionales. Tiene un modelo muy
+preciso para simular como absorbe las frecuencias el cráneo humano
diff --git a/clases/2024-05-24-clase.md b/clases/2024-05-24-clase.md
@@ -0,0 +1,17 @@
+# Clase 24-05-24
+
+\tableofcontents
+
+## Links útiles sobre color
+
+> NOTA: El Cubo RGB, CMY se toma en el coloquio
+
+* El modelo CMY es un modelo sustractivo, ya que al restar valores a las
+  coordenadas se aumenta luz, mientras que en el modelo RGB al aumenta los
+  valores RGB se aumenta luz.
+* Corrección de gamma: se aplica una curva de transferencia o curva de gamma a
+  la imagen para corregir el tono de los colores oscuros y claros
+  [Color management](https://threejs.org/docs/?q=color#manual/en/introduction/Color-management0)
+* Espacio RGB lineal o RGB con curva de gamma.
+* Cuando se carga una imagen en Three.JS se debe conocer el modo en que esta
+  guardada la imagen (por ejemplo en sRGB).