pp-now

Quick setup for single-pass GLSL post-processing with gl-now

npm install pp-now
1 downloads in the last week
9 downloads in the last month

pp-now experimental

Quick setup for single-pass GLSL post-processing with gl-now.

Usage

pp-now

require('pp-now')(shell, fragment[, vertex])

Takes the game-shell returned by gl-now, in addition to a fragment shader which takes the following required variables:

  • uniform sampler2D frame; - the screen as a 2D texture.
  • uniform sampler2D depth; - the screen's depth buffer as a 2D texture.
  • uniform vec2 frameSize; - the width/height of the screen in pixels.
  • varying vec2 uv; - the coordinates on the screen from 0 to 1. Alternatively, you can use gl_FragCoord.xy for precise pixel coordinates.

shell.on('pp-render', frame(t))

Instead of listening to gl-render, listen to pp-render to draw to the post-processing framebuffer.

shell.on('pp-uniforms', frame(shader))

Passes the gl-shader being used for post-processing so that you can update your own additional uniforms manually.


Note that if you're already using framebuffers in your demo it might break - in which case, you probably won't have much trouble adding post-processing yourself :)

License

MIT. See LICENSE.md for details.

npm loves you