Referencia loadShader()

loadShader()

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

vertFilename

Ruta del archivo del shader de vértices a cargar.

fragFilename

Ruta del archivo del shader de fragmentos a cargar.

successCallback

Función que se llamará una vez que se haya cargado el shader. Puede recibir el objeto p5.Shader.

failureCallback

Función que se llamará si el shader no se carga correctamente. Puede recibir un objeto de evento Error.

Notice any errors or typos? Please let us know. Please feel free to edit src/webgl/material.js and open a pull request!

Referencias Relacionadas