Referencia shader()

shader()

Establece el objeto p5.Shader para aplicar mientras se dibuja.

Los shaders son programas que se ejecutan en la unidad de procesamiento gráfico (GPU). Pueden procesar muchos píxeles o vértices 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.

Los objetos p5.Shader se pueden crear utilizando las funciones createShader() y loadShader().

El parámetro s es el objeto p5.Shader que se va a aplicar. Por ejemplo, llamar a shader(myShader) aplica myShader para procesar cada píxel en el lienzo. El shader se utilizará para:

  • Rellenar cuando se habilita una textura si incluye un uniforme sampler2D.
  • Rellenar cuando se habilitan luces si incluye el atributo aNormal, o si tiene alguno de los siguientes uniformes: uUseLighting, uAmbientLightCount, uDirectionalLightCount, uPointLightCount, uAmbientColor, uDirectionalDiffuseColors, uDirectionalSpecularColors, uPointLightLocation, uPointLightDiffuseColors, uPointLightSpecularColors, uLightingDirection o uSpecular.
  • Rellenar cuando no hay luces ni texturas.
  • Trazar líneas si incluye el uniforme uStrokeWeight.

El código fuente de los shaders de fragmentos y vértices de un objeto p5.Shader se compilará la primera vez que se pase a shader(). Consulta MDN para obtener más información sobre la compilación de shaders.

Llamar a resetShader() restaura los shaders predeterminados del sketch.

Nota: Los shaders solo se pueden utilizar en el modo WebGL.

Ejemplos

Sintaxis

shader(s)

Parámetros

s
p5.Shader:

Objeto p5.Shader para aplicar.

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