@flashport/flashport
Version:
FlashPort is a TypeScript 2D graphics library that largely replicates the Flash ActionScript 3.0 library
74 lines (73 loc) • 4.73 kB
TypeScript
import { Program3D } from "./Program3D";
import { IndexBuffer3D } from "./IndexBuffer3D";
import { VertexBuffer3D } from "./VertexBuffer3D";
import { TextureBase } from "./textures/TextureBase";
import { Texture } from "./textures/Texture";
import { CubeTexture } from "./textures/CubeTexture";
import { RectangleTexture } from "./textures/RectangleTexture";
import { VideoTexture } from "./textures/VideoTexture";
import { EventDispatcher } from "../events/EventDispatcher";
import { Matrix3D } from "../geom/Matrix3D";
import { ByteArray } from "../utils/ByteArray";
import { Rectangle } from "../geom/Rectangle";
import { BitmapData } from "../display/BitmapData";
export declare class Context3D extends EventDispatcher {
canvas: HTMLCanvasElement;
gl: WebGLRenderingContext;
private currentProgram;
private currentTextures;
private currentVBufs;
constructor();
static get supportsVideoTexture(): boolean;
get driverInfo(): string;
dispose(recreate?: boolean): void;
get enableErrorChecking(): boolean;
set enableErrorChecking(toggle: boolean);
configureBackBuffer(width: number, height: number, antiAlias: number, enableDepthAndStencil?: boolean, wantsBestResolution?: boolean): void;
clear(red?: number, green?: number, blue?: number, alpha?: number, depth?: number, stencil?: number, mask?: number): void;
drawTriangles(indexBuffer: IndexBuffer3D, firstIndex?: number, numTriangles?: number): void;
present(): void;
setProgram(program: Program3D): void;
setProgramConstantsFromVector(programType: string, firstRegister: number, data: number[], numRegisters?: number): void;
setProgramConstantsFromMatrix(programType: string, firstRegister: number, matrix: Matrix3D, transposedMatrix?: boolean): void;
setProgramConstantsFromByteArray(programType: string, firstRegister: number, numRegisters: number, data: ByteArray, byteArrayOffset: number): void;
setProgramConstantsFromVectorGL(name: string, data: number[], numRegisters?: number): void;
setProgramConstantsFromMatrixGL(name: string, matrix: Matrix3D, transposedMatrix?: boolean): void;
setProgramConstantsFromByteArrayGL(name: string, numRegisters: number, data: ByteArray, byteArrayOffset: number): void;
private getUniformLocationName;
private getUniformLocation;
setVertexBufferAt(index: number, buffer: VertexBuffer3D, bufferOffset?: number, format?: string): void;
setVertexBufferAtGL(name: string, buffer: VertexBuffer3D, bufferOffset?: number, format?: string): void;
setBlendFactors(sourceFactor: string, destinationFactor: string): void;
setColorMask(red: boolean, green: boolean, blue: boolean, alpha: boolean): void;
setDepthTest(depthMask: boolean, passCompareMode: string): void;
setTextureAt(sampler: number, texture: TextureBase): void;
setRenderToTexture(texture: TextureBase, enableDepthAndStencil?: boolean, antiAlias?: number, surfaceSelector?: number, colorOutputIndex?: number): void;
setRenderToBackBuffer(): void;
private setRenderToTextureInternal;
setCulling(triangleFaceToCull: string): void;
setStencilActions(triangleFace?: string, compareMode?: string, actionOnBothPass?: string, actionOnDepthFail?: string, actionOnDepthPassStencilFail?: string): void;
setStencilReferenceValue(referenceValue: number, readMask?: number, writeMask?: number): void;
setScissorRectangle(rectangle: Rectangle): void;
createVertexBuffer(numVertices: number, data32PerVertex: number, bufferUsage?: string): VertexBuffer3D;
createIndexBuffer(numIndices: number, bufferUsage?: string): IndexBuffer3D;
createTexture(width: number, height: number, format: string, optimizeForRenderToTexture: boolean, streamingLevels?: number): Texture;
createCubeTexture(size: number, format: string, optimizeForRenderToTexture: boolean, streamingLevels?: number): CubeTexture;
createRectangleTexture(width: number, height: number, format: string, optimizeForRenderToTexture: boolean): RectangleTexture;
createProgram(): Program3D;
drawToBitmapData(destination: BitmapData): void;
setSamplerStateAt(sampler: number, wrap: string, filter: string, mipfilter: string): void;
get profile(): string;
private setTextureInternal;
setTextureAtGL(name: string, sampler: number, texture: Texture): void;
private setCubeTextureInternal;
private setRectangleTextureInternal;
private setVideoTextureInternal;
get backBufferWidth(): number;
get backBufferHeight(): number;
get maxBackBufferWidth(): number;
set maxBackBufferWidth(width: number);
get maxBackBufferHeight(): number;
set maxBackBufferHeight(height: number);
createVideoTexture(): VideoTexture;
}