Shaders # function disableScroll(canvas){ canvas.onwheel = function(event){ event.preventDefault(); }; canvas.onmousewheel = function(event){ event.preventDefault(); }; } Son programas que se ejecutan en la GPU encargada de definir el color de los pixeles. Existen 3 tipos de shaders:
Vertex shader: se ejecutan por cada vértice del elemento que se quiere renderizar. Retornan la posición del vértice deseada. Fragment Shader: se ejecutan por cada fragmento visible de la imagen. Retornan el color de cada pixel.
Mandelbulb con RayMarching # function disableScroll(canvas){ canvas.onwheel = function(event){ event.preventDefault(); }; canvas.onmousewheel = function(event){ event.preventDefault(); }; } Ray casting # Es el uso da la intersección de un rayo con una superficie para solucionar diferentes problemas, como determinar el primer elemento interceptado por un rayo, determinar caras ocultas, renderización volumetrica.
Ray tracing # Técnica de renderizado aplicando una solución analítica al problema de la intersección del rayo con la superficie.
Iluminacion # function disableScroll(canvas){ canvas.onwheel = function(event){ event.preventDefault(); }; canvas.onmousewheel = function(event){ event.preventDefault(); }; } function getControlPanel(){ return document.getElementsByClassName("control-container")[0]; } Calculo de normales # Los vectores normales o perpendiculares a la superficie son necesarios para calcular el comportamiento de las luces direccionales en la escena.
La técnica más común para hallar los normales de un SDF es utilizar el gradiente
\(n = normalize(\nabla f(p))\) La definicion de gradiente es