wggl
Version:
A friendly interface to shaders
28 lines (27 loc) • 949 B
TypeScript
import { Shader, ShaderAttrs } from "./shader";
import { Buffer } from "./buffer";
import { DrawModes } from "./primitives";
interface WebGLRenderingContext {
[key: string]: any;
}
export interface WgglProgramShaders {
[key: string]: [Shader, Shader];
}
export interface AttrPointer {
location: WebGLUniformLocation | number;
parameters: any;
buffer?: WebGLBuffer;
}
export interface AttrPointers {
[key: string]: AttrPointer;
}
export declare class WgglProgram {
canvas: HTMLCanvasElement;
bindPointers: AttrPointers;
program: WebGLProgram;
gl: WebGLRenderingContext;
constructor(canvas: HTMLCanvasElement, bindPointers: AttrPointers, program: WebGLProgram);
draw(values: ShaderAttrs, drawMode?: DrawModes, offset?: number, size?: number, keepCurrentViewport?: boolean): void;
drawTo(buffer: Buffer, values: AttrPointers, drawMode?: DrawModes, offset?: number, size?: number): void;
}
export {};