@tolokoban/tgd
Version:
ToloGameDev library for WebGL2
39 lines • 1.64 kB
TypeScript
import { WebglAttributeType, WebglUniformType } from "..";
import { TgdCodeBloc, TgdCodeFunctions, TgdCodeVariables } from "./code";
/**
* Helper to create a Vertex Shader.
*
* Sometime you need to add some code to a shader depending on
* what you want to display. This can be the case when you use
* different materials. All the 3D transformations are common,
* but you may need more or less varyings and uniforms.
* @see https://registry.khronos.org/OpenGL/specs/es/3.0/GLSL_ES_Specification_3.00.pdf
*/
export declare class TgdShaderVertex {
protected static counter: number;
readonly name: string;
precision: "lowp" | "mediump" | "highp";
uniforms: TgdCodeVariables<WebglUniformType>;
attributes: TgdCodeVariables<WebglAttributeType>;
varying: TgdCodeVariables<WebglAttributeType>;
functions: TgdCodeFunctions;
mainCode: TgdCodeBloc;
mainCodeHeaders: TgdCodeBloc[];
private readonly header;
constructor({ name, precision, uniforms, attributes, varying, functions, mainCode, mainCodeHeaders, header, }?: Partial<{
name: string;
precision: "lowp" | "mediump" | "highp";
uniforms: TgdCodeVariables<WebglUniformType>;
attributes: TgdCodeVariables<WebglAttributeType>;
varying: TgdCodeVariables<WebglAttributeType>;
functions: TgdCodeFunctions;
mainCode: TgdCodeBloc;
mainCodeHeaders: TgdCodeBloc[];
header: TgdCodeBloc;
}>);
clone(): TgdShaderVertex;
get code(): string;
createShader(gl: WebGL2RenderingContext): WebGLShader;
debug(caption?: string): void;
}
//# sourceMappingURL=vertex.d.ts.map