regl-shape
Version:
2D shape shader for regl
30 lines (29 loc) • 1.07 kB
TypeScript
import { Regl, DrawConfig, Texture2D, Buffer, DynamicVariableFn, DefaultContext } from "regl";
import { InnerShapeProps } from "..";
export declare type BufferAttribute = {
buffer: Buffer | DynamicVariableFn<Buffer, DefaultContext, InnerShapeProps>;
offset?: number;
stride?: number;
divisor?: number;
};
export declare type ShaderUniforms = {
miterMode: number;
miterLimit: number;
scale: number[];
scaleFract: number[];
translate: number[];
translateFract: number[];
dashSize: number;
dashPattern: Texture2D;
thickness: number;
opacity: number;
pixelRatio: number;
viewport: number[];
depth: number;
};
export declare type ShaderDrawConfig<Attributes, Uniforms = ShaderUniforms> = DrawConfig<Uniforms, Attributes, InnerShapeProps>;
export declare function createShaders(regl: Regl): {
rect: import("regl").DrawCommand<DefaultContext, InnerShapeProps>;
miter: import("regl").DrawCommand<DefaultContext, InnerShapeProps>;
fill: import("regl").DrawCommand<DefaultContext, InnerShapeProps>;
};