Home

Awesome

glsl-quad

####Description

glsl-quad provides simple utilities (simple quad mesh, shaders, etc.) for image processing with webgl.

See glsl-quad-demo.js for usage.

####Dependencies

####Demo

To run the demo, run:

    cd ./glsl-quad
    
    #install npm dependencies
    npm install
    
    #browser should open with the demo
    budo glsl-quad-demo.js --open


Results:

branchdemo
masterglsl-quad-demo
    | [glsl-quad-uv-demo](https://realazthat.github.io/glsl-quad/master/www/glsl-quad-uv-demo/index.html)
    | [glsl-quad-pos-demo](https://realazthat.github.io/glsl-quad/master/www/glsl-quad-pos-demo/index.html)
    | [glsl-quad-vertical-flip-tests](https://realazthat.github.io/glsl-quad/master/www/glsl-quad-vertical-flip-tests/index.html)

develop | glsl-quad-demo | glsl-quad-uv-demo | glsl-quad-pos-demo | glsl-quad-vertical-flip-tests

####Docs

const quad = require('./glsl-quad.js');
quad.verts
quad.indices
quad.uvs
quad.shader.frag
quad.shader.vert
quad.bitmaps.directions.uri

####Usage

See glsl-quad-demo.js for a full demo using regl and resl.

An excerpt:


    const drawTexture = regl({
      frag: quad.shader.frag,
      vert: quad.shader.vert,
      attributes: {
        a_position: quad.verts,
        a_uv: quad.uvs
      },
      elements: quad.indices,
      uniforms: {
        u_tex: regl.prop('texture'),
        u_clip_y: 1
      }
    });

    drawTexture({texture});