Carga shaders de vértices y fragmentos para crear un objeto p5.Shader.
Los shaders son programas que se ejecutan en la unidad de procesamiento gráfico (GPU). Pueden procesar muchos píxeles al mismo tiempo, lo que los hace rápidos para muchas tareas gráficas. Están escritos en un lenguaje llamado GLSL y se ejecutan junto con el resto del código en un sketch.
Una vez creado el objeto p5.Shader, se puede usar con la función shader(), como en shader(myShader)
. Un programa de shader consta de dos archivos, un shader de vértices y un shader de fragmentos. El shader de vértices afecta dónde se dibuja la geometría 3D en la pantalla y el shader de fragmentos afecta el color.
loadShader()
carga los shaders de vértices y fragmentos desde sus archivos .vert
y .frag
. Por ejemplo, llamar a loadShader('/assets/shader.vert', '/assets/shader.frag')
carga ambos shaders requeridos y devuelve un objeto p5.Shader.
El tercer parámetro, successCallback
, es opcional. Si se pasa una función, se llamará una vez que se haya cargado el shader. La función de devolución de llamada puede utilizar el nuevo objeto p5.Shader como su parámetro.
El cuarto parámetro, failureCallback
, también es opcional. Si se pasa una función, se llamará si el shader no se carga correctamente. La función de devolución de llamada puede utilizar el error del evento como su parámetro.
Los shaders pueden tardar en cargarse. Llamar a loadShader()
en preload() asegura que los shaders se carguen antes de que se utilicen en setup() o draw().
Nota: Los shaders solo se pueden usar en el modo WebGL.
Ejemplos
Sintaxis
loadShader(vertFilename, fragFilename, [successCallback], [failureCallback])
Parámetros
Ruta del archivo del shader de vértices a cargar.
Ruta del archivo del shader de fragmentos a cargar.
Función que se llamará una vez que se haya cargado el shader. Puede recibir el objeto p5.Shader.
Función que se llamará si el shader no se carga correctamente. Puede recibir un objeto de evento Error
.
Returns
Referencias Relacionadas
copyToContext
Copia el shader de un contexto de dibujo a otro.
setUniform
Establece los valores de las variables uniformes (globales) del shader.
ambientMaterial
Establece el color ambiental del material de la superficie de las formas.
createFilterShader
Crea un objeto p5.Shader para ser utilizado con la función filter().