Process rectangular shaders without webgl and obtain the result. Can be used for shaders unit testing, audio processing etc. A nogl analog of gl-shader-output for node.
var ShaderOutput =//get a draw function for our testvar draw =;//returns the frag color as [R, G, B, A]var color =//we could also set uniforms before renderingvar color2 =//due to precision loss, you may want to use a fuzzy equality checkvar epsilon = 1e-5;var almostEqual =
draw = ShaderOutput(shader, options?)
Takes a gl-shader instance or fragment shader source and an options, returns a
draw function. Possible options:
widththe width of a drawing buffer, by default - 1
heightthe height of a drawing buffer, by default - 1
The draw function has the following signature:
var fragColor =
uniforms is an optional map of uniform names to values (such as
[x, y] array for vec2), applied before rendering.
The return value is the gl_FragColor RGBA of the canvas, in floats, such as
[0.5, 1.0, 0.25, 1.0].
Hint: you can define varyings by passing gl-shader instance with custom vertex shader. To create gl-shader in node, you can use nogl:
var gl = ;var shader = gl vertexSrc fragmentSrc;var draw = shader;