3D Gráficos por computador
De las derivadas al renderizado: vectores, normales, superficies, iluminación y la integral que da su color a cada píxel.
- 01
Funciones
Una regla que asigna a cada entrada de un conjunto exactamente una salida de un conjunto . El cálculo estudia cómo cambian las salidas cuando cambian las entradas; computar es, literalmente, evaluar funciones.
- 02
Derivada
es la tasa de cambio instantánea de en : la pendiente de la recta tangente a la gráfica, definida como el límite de las pendientes de las rectas secantes.
- 03
Vectores
Listas de números que se pueden sumar y escalar. Geométricamente, flechas con longitud y dirección; computacionalmente, arrays.
- 04
Producto escalar
. Mide cuánto apuntan dos vectores en la misma dirección, y es la operación más ejecutada del aprendizaje automático.
- 05
Derivadas parciales
: la derivada respecto de una variable, dejando fijas las demás. Cada una responde a «¿cuánto depende la salida de esta entrada?»; en una red neuronal, de este peso.
- 06
Gradiente
: el vector de todas las derivadas parciales. Apunta en la dirección de máximo ascenso, su longitud es esa pendiente máxima y es perpendicular a los conjuntos de nivel. Si caminas en contra bajas lo más deprisa posible.
- 07
Superficies y conjuntos de nivel
Tres formas de describir una superficie: una gráfica , un conjunto de nivel (implícita) o una parametrización . Los mapas de contorno de las funciones de pérdida y las isosuperficies de la imagen médica son conjuntos de nivel.
- 08
Normales de superficie
El vector unitario perpendicular a una superficie en un punto. Para una superficie implícita es ; para una paramétrica , el producto vectorial normalizado . Todo cálculo de iluminación empieza por ella.
- 09
Iluminación y sombreado
Calcular el color de un punto de una superficie a partir de la luz, la normal y el observador. La luz difusa lambertiana es ; los brillos especulares usan . Los valores se interpolan dentro de los triángulos.
- 10
Curvas de Bézier y splines
Curvas polinómicas controladas por unos pocos puntos, pegadas con condiciones de continuidad sobre las derivadas (: misma tangente, : misma curvatura). Las tipografías, los trazados SVG, las superficies CAD y las curvas de animación se construyen con ellas.
- 11
Campos vectoriales
Un vector en cada punto: el viento, el flujo del agua, un campo magnético, la fuerza de la gravedad. Las curvas integrales (líneas de corriente) siguen las flechas.
- 12
Integrales múltiples y cambio de variables
Integrales sobre regiones de : volúmenes, masas, probabilidades de vectores aleatorios. Se calculan como integrales iteradas (Fubini) y se transforman con el determinante jacobiano: .
- 13
Ray tracing (trazado de rayos)
Seguir rayos de luz desde la cámara hacia la escena: resolver intersecciones (raíces de ecuaciones), reflejar y refractar usando la normal, y recurrir. El ray tracing en tiempo real ya está en las GPU de consumo.
- 14
La ecuación de renderizado
Kajiya (1986): la luz que sale de un punto es la que emite más la integral, sobre todas las direcciones de llegada, de la luz entrante por la reflectancia del material por un coseno. Una ecuación integral que se resuelve con path tracing de Monte Carlo, el método del renderizado de cine actual.