ts-game-engine
Version:
Simple WebGL game/render engine written in TypeScript
52 lines (51 loc) • 1.71 kB
TypeScript
import { vec4 } from "gl-matrix";
import { Shader } from "../../Materials/Shader";
import { Texture, TextureTypes } from "../../Textures/Texture";
export declare const enum FaceCullingModes {
Front = 1028,
Back = 1029,
FrontAndBack = 1032
}
export declare const enum DepthFunctions {
Never = 512,
Less = 513,
Equal = 514,
LEqual = 515,
Greater = 516,
NotEqual = 517,
GEqual = 518,
Always = 519
}
export declare const TEXTURE_UNIT_AMOUNT: number;
export declare class PipelineState {
private context;
constructor(context: WebGL2RenderingContext);
private clearColor;
get ClearColor(): vec4;
set ClearColor(clearColor: vec4);
private clearDepth;
get ClearDepth(): number;
set ClearDepth(clearDepth: number);
private depthTest;
get DepthTest(): boolean;
set DepthTest(depthTest: boolean);
private depthFunction;
get DepthFunction(): DepthFunctions;
set DepthFunction(depthFunction: DepthFunctions);
private faceCulling;
get FaceCulling(): boolean;
set FaceCulling(faceCulling: boolean);
private faceCullingMode;
get FaceCullingMode(): FaceCullingModes;
set FaceCullingMode(faceCullingMode: FaceCullingModes);
private currentShader;
get CurrentShader(): Shader | undefined;
set CurrentShader(shader: Shader | undefined);
private currentVAO;
get CurrentVAO(): WebGLVertexArrayObject | null;
set CurrentVAO(vao: WebGLVertexArrayObject | null);
private currentTextureUnit;
private SetCurrentTextureUnit;
private textureUnits;
BindTexture(type: TextureTypes, texture: Texture, textureUnit: number): void;
}