UNPKG

@absulit/points

Version:

A Generative Art library made in WebGPU

72 lines (70 loc) 2.38 kB
export { RenderPass as default }; /** * A RenderPass is a way to have a block of shaders to pass to your application pipeline and * these render passes will be executed in the order you pass them in the {@link Points#init} method. * * @example * import Points, { RenderPass } from 'points'; * // vert, frag and compute are strings with the wgsl shaders. * let renderPasses = [ * new RenderPass(vert1, frag1, compute1), * new RenderPass(vert2, frag2, compute2) * ]; * // we pass the array of renderPasses * await points.init(renderPasses); */ declare class RenderPass { /** * A collection of Vertex, Compute and Fragment shaders that represent a RenderPass. * This is useful for PostProcessing. * @param {String} vertexShader WGSL Vertex Shader in a String. * @param {String} fragmentShader WGSL Fragment Shader in a String. * @param {String} computeShader WGSL Compute Shader in a String. */ constructor(vertexShader: string, fragmentShader: string, computeShader: string, workgroupCountX: any, workgroupCountY: any, workgroupCountZ: any); set internal(value: boolean); /** * To use with {link RenderPasses} so it's internal * @ignore */ get internal(): boolean; /** * get the vertex shader content */ get vertexShader(): string; /** * get the compute shader content */ get computeShader(): string; /** * get the fragment shader content */ get fragmentShader(): string; set computePipeline(value: any); get computePipeline(): any; set renderPipeline(value: any); get renderPipeline(): any; set computeBindGroup(value: any); get computeBindGroup(): any; set uniformBindGroup(value: any); get uniformBindGroup(): any; set bindGroupLayout(value: any); get bindGroupLayout(): any; set bindGroupLayoutCompute(value: any); get bindGroupLayoutCompute(): any; set entries(value: any); get entries(): any; get compiledShaders(): { vertex: string; compute: string; fragment: string; }; get hasComputeShader(): boolean; get hasVertexShader(): boolean; get hasFragmentShader(): boolean; get hasVertexAndFragmentShader(): boolean; get workgroupCountX(): any; get workgroupCountY(): any; get workgroupCountZ(): any; #private; }