@absulit/points
Version:
A Generative Art library made in WebGPU
99 lines (98 loc) • 3.08 kB
TypeScript
export { RenderPasses as default };
/**
* List of predefined Render Passes for Post Processing.
* Parameters required are shown as a warning in the JS console.
* @class
*
* @example
* import Points, { RenderPass, RenderPasses } from 'points';
* const points = new Points('canvas');
*
* // option 1: along with the RenderPasses pased into `Points.init()`
* let renderPasses = [
* new RenderPass(vert1, frag1, compute1),
* new RenderPass(vert2, frag2, compute2)
* ];
*
* // option 2: calling `points.addRenderPass()` method
* points.addRenderPass(RenderPasses.GRAYSCALE);
* points.addRenderPass(RenderPasses.CHROMATIC_ABERRATION, { distance: .02 });
* points.addRenderPass(RenderPasses.COLOR, { color: [.5, 1, 0, 1], blendAmount: .5 });
* points.addRenderPass(RenderPasses.PIXELATE);
* points.addRenderPass(RenderPasses.LENS_DISTORTION);
* points.addRenderPass(RenderPasses.FILM_GRAIN);
* points.addRenderPass(RenderPasses.BLOOM);
* points.addRenderPass(RenderPasses.BLUR, { resolution: [100, 100], direction: [.4, 0], radians: 0 });
* points.addRenderPass(RenderPasses.WAVES, { scale: .05 });
*
* await points.init(renderPasses);
*
* points.update(update);
*
* function update() {
* // update uniforms and other animation variables
* }
*/
declare class RenderPasses {
/**
* Apply a color {@link RenderPass}
* @example
* points.addRenderPass(RenderPasses.COLOR, { color: [.5, 1, 0, 1], blendAmount: .5 });
*/
static COLOR: any;
/**
* Apply a grayscale {@link RenderPass}
* @example
* points.addRenderPass(RenderPasses.GRAYSCALE);
*/
static GRAYSCALE: any;
/**
* Apply a chromatic aberration {@link RenderPass}
* @example
* points.addRenderPass(RenderPasses.CHROMATIC_ABERRATION, { distance: .02 });
*/
static CHROMATIC_ABERRATION: any;
/**
* Apply a pixelation {@link RenderPass}
* @example
* points.addRenderPass(RenderPasses.PIXELATE);
*/
static PIXELATE: any;
/**
* Apply a lens distortion {@link RenderPass}
* @example
* points.addRenderPass(RenderPasses.LENS_DISTORTION);
*/
static LENS_DISTORTION: any;
/**
* Apply a film grain {@link RenderPass}
* @example
* points.addRenderPass(RenderPasses.FILM_GRAIN);
*/
static FILM_GRAIN: any;
/**
* Apply a bloom {@link RenderPass}
* @example
* points.addRenderPass(RenderPasses.BLOOM);
*/
static BLOOM: any;
/**
* Apply a blur {@link RenderPass}
* @example
* points.addRenderPass(RenderPasses.BLUR, { resolution: [100, 100], direction: [.4, 0], radians: 0 });
*/
static BLUR: any;
/**
* Apply a waives noise {@link RenderPass}
* @example
* points.addRenderPass(RenderPasses.WAVES, { scale: .05 });
*/
static WAVES: any;
/**
* Apply a CRT tv pixels effect {@link RenderPass}
* @example
* points.addRenderPass(RenderPasses.CRT, { scale: .05 });
*/
static CRT: RenderPass;
}
import { RenderPass } from 'points';