UNPKG

cgas

Version:

Xtor Compute Geometry Algorithm Libary 计算几何算法库

589 lines (543 loc) 31.1 kB
export const READ_BUFFER: number = 0x0C02; export const UNPACK_ROW_LENGTH: number = 0x0CF2; export const UNPACK_SKIP_ROWS: number = 0x0CF3; export const UNPACK_SKIP_PIXELS: number = 0x0CF4; export const PACK_ROW_LENGTH: number = 0x0D02; export const PACK_SKIP_ROWS: number = 0x0D03; export const PACK_SKIP_PIXELS: number = 0x0D04; export const COLOR: number = 0x1800; export const DEPTH: number = 0x1801; export const STENCIL: number = 0x1802; export const RED: number = 0x1903; export const RGB8: number = 0x8051; export const RGBA8: number = 0x8058; export const RGB10_A2: number = 0x8059; export const TEXTURE_BINDING_3D: number = 0x806A; export const UNPACK_SKIP_IMAGES: number = 0x806D; export const UNPACK_IMAGE_HEIGHT: number = 0x806E; export const TEXTURE_3D: number = 0x806F; export const TEXTURE_WRAP_R: number = 0x8072; export const MAX_3D_TEXTURE_SIZE: number = 0x8073; export const UNSIGNED_INT_2_10_10_10_REV: number = 0x8368; export const MAX_ELEMENTS_VERTICES: number = 0x80E8; export const MAX_ELEMENTS_INDICES: number = 0x80E9; export const TEXTURE_MIN_LOD: number = 0x813A; export const TEXTURE_MAX_LOD: number = 0x813B; export const TEXTURE_BASE_LEVEL: number = 0x813C; export const TEXTURE_MAX_LEVEL: number = 0x813D; export const MIN: number = 0x8007; export const MAX: number = 0x8008; export const DEPTH_COMPONENT24: number = 0x81A6; export const MAX_TEXTURE_LOD_BIAS: number = 0x84FD; export const TEXTURE_COMPARE_MODE: number = 0x884C; export const TEXTURE_COMPARE_FUNC: number = 0x884D; export const CURRENT_QUERY: number = 0x8865; export const QUERY_RESULT: number = 0x8866; export const QUERY_RESULT_AVAILABLE: number = 0x8867; export const STREAM_READ: number = 0x88E1; export const STREAM_COPY: number = 0x88E2; export const STATIC_READ: number = 0x88E5; export const STATIC_COPY: number = 0x88E6; export const DYNAMIC_READ: number = 0x88E9; export const DYNAMIC_COPY: number = 0x88EA; export const MAX_DRAW_BUFFERS: number = 0x8824; export const DRAW_BUFFER0: number = 0x8825; export const DRAW_BUFFER1: number = 0x8826; export const DRAW_BUFFER2: number = 0x8827; export const DRAW_BUFFER3: number = 0x8828; export const DRAW_BUFFER4: number = 0x8829; export const DRAW_BUFFER5: number = 0x882A; export const DRAW_BUFFER6: number = 0x882B; export const DRAW_BUFFER7: number = 0x882C; export const DRAW_BUFFER8: number = 0x882D; export const DRAW_BUFFER9: number = 0x882E; export const DRAW_BUFFER10: number = 0x882F; export const DRAW_BUFFER11: number = 0x8830; export const DRAW_BUFFER12: number = 0x8831; export const DRAW_BUFFER13: number = 0x8832; export const DRAW_BUFFER14: number = 0x8833; export const DRAW_BUFFER15: number = 0x8834; export const MAX_FRAGMENT_UNIFORM_COMPONENTS: number = 0x8B49; export const MAX_VERTEX_UNIFORM_COMPONENTS: number = 0x8B4A; export const SAMPLER_3D: number = 0x8B5F; export const SAMPLER_2D_SHADOW: number = 0x8B62; export const FRAGMENT_SHADER_DERIVATIVE_HINT: number = 0x8B8B; export const PIXEL_PACK_BUFFER: number = 0x88EB; export const PIXEL_UNPACK_BUFFER: number = 0x88EC; export const PIXEL_PACK_BUFFER_BINDING: number = 0x88ED; export const PIXEL_UNPACK_BUFFER_BINDING: number = 0x88EF; export const FLOAT_MAT2x3: number = 0x8B65; export const FLOAT_MAT2x4: number = 0x8B66; export const FLOAT_MAT3x2: number = 0x8B67; export const FLOAT_MAT3x4: number = 0x8B68; export const FLOAT_MAT4x2: number = 0x8B69; export const FLOAT_MAT4x3: number = 0x8B6A; export const SRGB: number = 0x8C40; export const SRGB8: number = 0x8C41; export const SRGB8_ALPHA8: number = 0x8C43; export const COMPARE_REF_TO_TEXTURE: number = 0x884E; export const RGBA32F: number = 0x8814; export const RGB32F: number = 0x8815; export const RGBA16F: number = 0x881A; export const RGB16F: number = 0x881B; export const VERTEX_ATTRIB_ARRAY_INTEGER: number = 0x88FD; export const MAX_ARRAY_TEXTURE_LAYERS: number = 0x88FF; export const MIN_PROGRAM_TEXEL_OFFSET: number = 0x8904; export const MAX_PROGRAM_TEXEL_OFFSET: number = 0x8905; export const MAX_VARYING_COMPONENTS: number = 0x8B4B; export const TEXTURE_2D_ARRAY: number = 0x8C1A; export const TEXTURE_BINDING_2D_ARRAY: number = 0x8C1D; export const R11F_G11F_B10F: number = 0x8C3A; export const UNSIGNED_INT_10F_11F_11F_REV: number = 0x8C3B; export const RGB9_E5: number = 0x8C3D; export const UNSIGNED_INT_5_9_9_9_REV: number = 0x8C3E; export const TRANSFORM_FEEDBACK_BUFFER_MODE: number = 0x8C7F; export const MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS: number = 0x8C80; export const RANSFORM_FEEDBACK_VARYINGS: number = 0x8C83; export const TRANSFORM_FEEDBACK_BUFFER_START: number = 0x8C84; export const TRANSFORM_FEEDBACK_BUFFER_SIZE: number = 0x8C85; export const TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN: number = 0x8C88; export const RASTERIZER_DISCARD: number = 0x8C89; export const MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS: number = 0x8C8A; export const MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS: number = 0x8C8B; export const INTERLEAVED_ATTRIBS: number = 0x8C8C; export const SEPARATE_ATTRIBS: number = 0x8C8D; export const TRANSFORM_FEEDBACK_BUFFER: number = 0x8C8E; export const TRANSFORM_FEEDBACK_BUFFER_BINDING: number = 0x8C8F; export const RGBA32UI: number = 0x8D70; export const RGB32UI: number = 0x8D71; export const RGBA16UI: number = 0x8D76; export const RGB16UI: number = 0x8D77; export const RGBA8UI: number = 0x8D7C; export const RGB8UI: number = 0x8D7D; export const RGBA32I: number = 0x8D82; export const RGB32I: number = 0x8D83; export const RGBA16I: number = 0x8D88; export const RGB16I: number = 0x8D89; export const RGBA8I: number = 0x8D8E; export const RGB8I: number = 0x8D8F; export const RED_INTEGER: number = 0x8D94; export const RGB_INTEGER: number = 0x8D98; export const RGBA_INTEGER: number = 0x8D99; export const SAMPLER_2D_ARRAY: number = 0x8DC1; export const SAMPLER_2D_ARRAY_SHADOW: number = 0x8DC4; export const SAMPLER_CUBE_SHADOW: number = 0x8DC5; export const UNSIGNED_INT_VEC2: number = 0x8DC6; export const UNSIGNED_INT_VEC3: number = 0x8DC7; export const UNSIGNED_INT_VEC4: number = 0x8DC8; export const INT_SAMPLER_2D: number = 0x8DCA; export const INT_SAMPLER_3D: number = 0x8DCB; export const INT_SAMPLER_CUBE: number = 0x8DCC; export const INT_SAMPLER_2D_ARRAY: number = 0x8DCF; export const UNSIGNED_INT_SAMPLER_2D: number = 0x8DD2; export const UNSIGNED_INT_SAMPLER_3D: number = 0x8DD3; export const UNSIGNED_INT_SAMPLER_CUBE: number = 0x8DD4; export const UNSIGNED_INT_SAMPLER_2D_ARRAY: number = 0x8DD7; export const DEPTH_COMPONENT32F: number = 0x8CAC; export const DEPTH32F_STENCIL8: number = 0x8CAD; export const FLOAT_32_UNSIGNED_INT_24_8_REV: number = 0x8DAD; export const FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING: number = 0x8210; export const FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE: number = 0x8211; export const FRAMEBUFFER_ATTACHMENT_RED_SIZE: number = 0x8212; export const FRAMEBUFFER_ATTACHMENT_GREEN_SIZE: number = 0x8213; export const FRAMEBUFFER_ATTACHMENT_BLUE_SIZE: number = 0x8214; export const FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE: number = 0x8215; export const FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE: number = 0x8216; export const FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE: number = 0x8217; export const FRAMEBUFFER_DEFAULT: number = 0x8218; export const UNSIGNED_INT_24_8: number = 0x84FA; export const DEPTH24_STENCIL8: number = 0x88F0; export const UNSIGNED_NORMALIZED: number = 0x8C17; export const DRAW_FRAMEBUFFER_BINDING: number = 0x8CA6; /* Same as FRAMEBUFFER_BINDING */ export const READ_FRAMEBUFFER: number = 0x8CA8; export const DRAW_FRAMEBUFFER: number = 0x8CA9; export const READ_FRAMEBUFFER_BINDING: number = 0x8CAA; export const RENDERBUFFER_SAMPLES: number = 0x8CAB; export const FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER: number = 0x8CD4; export const MAX_COLOR_ATTACHMENTS: number = 0x8CDF; export const COLOR_ATTACHMENT1: number = 0x8CE1; export const COLOR_ATTACHMENT2: number = 0x8CE2; export const COLOR_ATTACHMENT3: number = 0x8CE3; export const COLOR_ATTACHMENT4: number = 0x8CE4; export const COLOR_ATTACHMENT5: number = 0x8CE5; export const COLOR_ATTACHMENT6: number = 0x8CE6; export const COLOR_ATTACHMENT7: number = 0x8CE7; export const COLOR_ATTACHMENT8: number = 0x8CE8; export const COLOR_ATTACHMENT9: number = 0x8CE9; export const COLOR_ATTACHMENT10: number = 0x8CEA; export const COLOR_ATTACHMENT11: number = 0x8CEB; export const COLOR_ATTACHMENT12: number = 0x8CEC; export const COLOR_ATTACHMENT13: number = 0x8CED; export const COLOR_ATTACHMENT14: number = 0x8CEE; export const COLOR_ATTACHMENT15: number = 0x8CEF; export const FRAMEBUFFER_INCOMPLETE_MULTISAMPLE: number = 0x8D56; export const MAX_SAMPLES: number = 0x8D57; export const HALF_FLOAT: number = 0x140B; export const RG: number = 0x8227; export const RG_INTEGER: number = 0x8228; export const R8: number = 0x8229; export const RG8: number = 0x822B; export const R16F: number = 0x822D; export const R32F: number = 0x822E; export const RG16F: number = 0x822F; export const RG32F: number = 0x8230; export const R8I: number = 0x8231; export const R8UI: number = 0x8232; export const R16I: number = 0x8233; export const R16UI: number = 0x8234; export const R32I: number = 0x8235; export const R32UI: number = 0x8236; export const RG8I: number = 0x8237; export const RG8UI: number = 0x8238; export const RG16I: number = 0x8239; export const RG16UI: number = 0x823A; export const RG32I: number = 0x823B; export const RG32UI: number = 0x823C; export const VERTEX_ARRAY_BINDING: number = 0x85B5; export const R8_SNORM: number = 0x8F94; export const RG8_SNORM: number = 0x8F95; export const RGB8_SNORM: number = 0x8F96; export const RGBA8_SNORM: number = 0x8F97; export const SIGNED_NORMALIZED: number = 0x8F9C; export const COPY_READ_BUFFER: number = 0x8F36; export const COPY_WRITE_BUFFER: number = 0x8F37; export const COPY_READ_BUFFER_BINDING: number = 0x8F36; /* Same as COPY_READ_BUFFER */ export const COPY_WRITE_BUFFER_BINDING: number = 0x8F37; /* Same as COPY_WRITE_BUFFER */ export const UNIFORM_BUFFER: number = 0x8A11; export const UNIFORM_BUFFER_BINDING: number = 0x8A28; export const UNIFORM_BUFFER_START: number = 0x8A29; export const UNIFORM_BUFFER_SIZE: number = 0x8A2A; export const MAX_VERTEX_UNIFORM_BLOCKS: number = 0x8A2B; export const MAX_FRAGMENT_UNIFORM_BLOCKS: number = 0x8A2D; export const MAX_COMBINED_UNIFORM_BLOCKS: number = 0x8A2E; export const MAX_UNIFORM_BUFFER_BINDINGS: number = 0x8A2F; export const MAX_UNIFORM_BLOCK_SIZE: number = 0x8A30; export const MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS: number = 0x8A31; export const MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS: number = 0x8A33; export const UNIFORM_BUFFER_OFFSET_ALIGNMENT: number = 0x8A34; export const ACTIVE_UNIFORM_BLOCKS: number = 0x8A36; export const UNIFORM_TYPE: number = 0x8A37; export const UNIFORM_SIZE: number = 0x8A38; export const UNIFORM_BLOCK_INDEX: number = 0x8A3A; export const UNIFORM_OFFSET: number = 0x8A3B; export const UNIFORM_ARRAY_STRIDE: number = 0x8A3C; export const UNIFORM_MATRIX_STRIDE: number = 0x8A3D; export const UNIFORM_IS_ROW_MAJOR: number = 0x8A3E; export const UNIFORM_BLOCK_BINDING: number = 0x8A3F; export const UNIFORM_BLOCK_DATA_SIZE: number = 0x8A40; export const UNIFORM_BLOCK_ACTIVE_UNIFORMS: number = 0x8A42; export const UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES: number = 0x8A43; export const UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER: number = 0x8A44; export const UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER: number = 0x8A46; export const INVALID_INDEX: number = 0xFFFFFFFF; export const MAX_VERTEX_OUTPUT_COMPONENTS: number = 0x9122; export const MAX_FRAGMENT_INPUT_COMPONENTS: number = 0x9125; export const MAX_SERVER_WAIT_TIMEOUT: number = 0x9111; export const OBJECT_TYPE: number = 0x9112; export const SYNC_CONDITION: number = 0x9113; export const SYNC_STATUS: number = 0x9114; export const SYNC_FLAGS: number = 0x9115; export const SYNC_FENCE: number = 0x9116; export const SYNC_GPU_COMMANDS_COMPLETE: number = 0x9117; export const UNSIGNALED: number = 0x9118; export const SIGNALED: number = 0x9119; export const ALREADY_SIGNALED: number = 0x911A; export const TIMEOUT_EXPIRED: number = 0x911B; export const CONDITION_SATISFIED: number = 0x911C; export const WAIT_FAILED: number = 0x911D; export const SYNC_FLUSH_COMMANDS_BIT: number = 0x00000001; export const VERTEX_ATTRIB_ARRAY_DIVISOR: number = 0x88FE; export const ANY_SAMPLES_PASSED: number = 0x8C2F; export const ANY_SAMPLES_PASSED_CONSERVATIVE: number = 0x8D6A; export const SAMPLER_BINDING: number = 0x8919; export const RGB10_A2UI: number = 0x906F; export const INT_2_10_10_10_REV: number = 0x8D9F; export const TRANSFORM_FEEDBACK: number = 0x8E22; export const TRANSFORM_FEEDBACK_PAUSED: number = 0x8E23; export const TRANSFORM_FEEDBACK_ACTIVE: number = 0x8E24; export const TRANSFORM_FEEDBACK_BINDING: number = 0x8E25; export const TEXTURE_IMMUTABLE_FORMAT: number = 0x912F; export const MAX_ELEMENT_INDEX: number = 0x8D6B; export const TEXTURE_IMMUTABLE_LEVELS: number = 0x82DF; export const TIMEOUT_IGNORED: number = -1; /* WebGL-specific enums */ export const MAX_CLIENT_WAIT_TIMEOUT_WEBGL: number = 0x9247; export const TEXTURE0: number = 0x84c0; export const DYNAMIC_DRAW: number = 0x88e8; export const ARRAY_BUFFER: number = 0x8892; export const ELEMENT_ARRAY_BUFFER: number = 0x8893; export const COMPILE_STATUS: number = 0x8b81; export const LINK_STATUS: number = 0x8b82; export const FRAGMENT_SHADER: number = 0x8b30; export const VERTEX_SHADER: number = 0x8b31; export const ACTIVE_UNIFORMS: number = 0x8b86; export const ACTIVE_ATTRIBUTES: number = 0x8b89; export const FLOAT: number = 0x1406; export const FLOAT_VEC2: number = 0x8B50; export const FLOAT_VEC3: number = 0x8B51; export const FLOAT_VEC4: number = 0x8B52; export const INT: number = 0x1404; export const INT_VEC2: number = 0x8B53; export const INT_VEC3: number = 0x8B54; export const INT_VEC4: number = 0x8B55; export const BOOL: number = 0x8B56; export const BOOL_VEC2: number = 0x8B57; export const BOOL_VEC3: number = 0x8B58; export const BOOL_VEC4: number = 0x8B59; export const FLOAT_MAT2: number = 0x8B5A; export const FLOAT_MAT3: number = 0x8B5B; export const FLOAT_MAT4: number = 0x8B5C; export const SAMPLER_2D: number = 0x8B5E; export const SAMPLER_CUBE: number = 0x8B60; export const TEXTURE_2D: number = 0x0DE1; export const TEXTURE_CUBE_MAP: number = 0x8513; export enum ShaderType { VERTEX = VERTEX_SHADER, FRAGMENT = FRAGMENT_SHADER } export enum WrapType { FRAGMENT = FRAGMENT_SHADER } export enum TextureFilter { } export enum TextureEncoding { } // /* Buffer objects */ // void copyBufferSubData(readTarget, writeTarget, GLintptr readOffset, // GLintptr writeOffset, GLsizeiptr size); // // MapBufferRange, in particular its read-only and write-only modes, // // can not be exposed safely to JavaScript. GetBufferSubData // // replaces it for the purpose of fetching data back from the GPU. // void getBufferSubData(target, GLintptr srcByteOffset, [AllowShared] ArrayBufferView dstBuffer, // optional GLuint dstOffset:number= 0, optional GLuint length:number= 0); // /* Framebuffer objects */ // void blitFramebuffer(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, // GLint dstX1, GLint dstY1, GLbitfield mask, filter); // void framebufferTextureLayer(target, attachment, WebGLTexture ? texture, GLint level, // GLint layer); // void invalidateFramebuffer(target, sequence < > attachments); // void invalidateSubFramebuffer(target, sequence < > attachments, // GLint x, GLint y, GLsizei width, GLsizei height); // void readBuffer(src); // /* Renderbuffer objects */ // any getInternalformatParameter(target, internalformat, pname); // void renderbufferStorageMultisample(target, GLsizei samples, internalformat, // GLsizei width, GLsizei height); // /* Texture objects */ // void texStorage2D(target, GLsizei levels, internalformat, GLsizei width, // GLsizei height); // void texStorage3D(target, GLsizei levels, internalformat, GLsizei width, // GLsizei height, GLsizei depth); // void texImage3D(target, GLint level, GLint internalformat, GLsizei width, GLsizei height, // GLsizei depth, GLint border, format, type, GLintptr pboOffset); // void texImage3D(target, GLint level, GLint internalformat, GLsizei width, GLsizei height, // GLsizei depth, GLint border, format, type, // TexImageSource source); // May throw DOMException // void texImage3D(target, GLint level, GLint internalformat, GLsizei width, GLsizei height, // GLsizei depth, GLint border, format, type, [AllowShared] ArrayBufferView ? srcData); // void texImage3D(target, GLint level, GLint internalformat, GLsizei width, GLsizei height, // GLsizei depth, GLint border, format, type, [AllowShared] ArrayBufferView srcData, // GLuint srcOffset); // void texSubImage3D(target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, // GLsizei width, GLsizei height, GLsizei depth, format, type, // GLintptr pboOffset); // void texSubImage3D(target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, // GLsizei width, GLsizei height, GLsizei depth, format, type, // TexImageSource source); // May throw DOMException // void texSubImage3D(target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, // GLsizei width, GLsizei height, GLsizei depth, format, type, // [AllowShared] ArrayBufferView ? srcData, optional GLuint srcOffset:number= 0); // void copyTexSubImage3D(target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, // GLint x, GLint y, GLsizei width, GLsizei height); // void compressedTexImage3D(target, GLint level, internalformat, GLsizei width, // GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, GLintptr offset); // void compressedTexImage3D(target, GLint level, internalformat, GLsizei width, // GLsizei height, GLsizei depth, GLint border, [AllowShared] ArrayBufferView srcData, // optional GLuint srcOffset:number= 0, optional GLuint srcLengthOverride:number= 0); // void compressedTexSubImage3D(target, GLint level, GLint xoffset, GLint yoffset, // GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, // format, GLsizei imageSize, GLintptr offset); // void compressedTexSubImage3D(target, GLint level, GLint xoffset, GLint yoffset, // GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, // format, [AllowShared] ArrayBufferView srcData, // optional GLuint srcOffset:number= 0, // optional GLuint srcLengthOverride:number= 0); // /* Programs and shaders */ // [WebGLHandlesContextLoss] GLint getFragDataLocation(WebGLProgram program, DOMString name); // /* Uniforms */ // void uniform1ui(WebGLUniformLocation ? location, GLuint v0); // void uniform2ui(WebGLUniformLocation ? location, GLuint v0, GLuint v1); // void uniform3ui(WebGLUniformLocation ? location, GLuint v0, GLuint v1, GLuint v2); // void uniform4ui(WebGLUniformLocation ? location, GLuint v0, GLuint v1, GLuint v2, GLuint v3); // void uniform1uiv(WebGLUniformLocation ? location, Uint32List data, optional GLuint srcOffset:number= 0, // optional GLuint srcLength:number= 0); // void uniform2uiv(WebGLUniformLocation ? location, Uint32List data, optional GLuint srcOffset:number= 0, // optional GLuint srcLength:number= 0); // void uniform3uiv(WebGLUniformLocation ? location, Uint32List data, optional GLuint srcOffset:number= 0, // optional GLuint srcLength:number= 0); // void uniform4uiv(WebGLUniformLocation ? location, Uint32List data, optional GLuint srcOffset:number= 0, // optional GLuint srcLength:number= 0); // void uniformMatrix3x2fv(WebGLUniformLocation ? location, GLboolean transpose, Float32List data, // optional GLuint srcOffset:number= 0, optional GLuint srcLength:number= 0); // void uniformMatrix4x2fv(WebGLUniformLocation ? location, GLboolean transpose, Float32List data, // optional GLuint srcOffset:number= 0, optional GLuint srcLength:number= 0); // void uniformMatrix2x3fv(WebGLUniformLocation ? location, GLboolean transpose, Float32List data, // optional GLuint srcOffset:number= 0, optional GLuint srcLength:number= 0); // void uniformMatrix4x3fv(WebGLUniformLocation ? location, GLboolean transpose, Float32List data, // optional GLuint srcOffset:number= 0, optional GLuint srcLength:number= 0); // void uniformMatrix2x4fv(WebGLUniformLocation ? location, GLboolean transpose, Float32List data, // optional GLuint srcOffset:number= 0, optional GLuint srcLength:number= 0); // void uniformMatrix3x4fv(WebGLUniformLocation ? location, GLboolean transpose, Float32List data, // optional GLuint srcOffset:number= 0, optional GLuint srcLength:number= 0); // /* Vertex attribs */ // void vertexAttribI4i(GLuint index, GLint x, GLint y, GLint z, GLint w); // void vertexAttribI4iv(GLuint index, Int32List values); // void vertexAttribI4ui(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); // void vertexAttribI4uiv(GLuint index, Uint32List values); // void vertexAttribIPointer(GLuint index, GLint size, type, GLsizei stride, GLintptr offset); // /* Writing to the drawing buffer */ // void vertexAttribDivisor(GLuint index, GLuint divisor); // void drawArraysInstanced(mode, GLint first, GLsizei count, GLsizei instanceCount); // void drawElementsInstanced(mode, GLsizei count, type, GLintptr offset, GLsizei instanceCount); // void drawRangeElements(mode, GLuint start, GLuint end, GLsizei count, type, GLintptr offset); // /* Multiple Render Targets */ // void drawBuffers(sequence < > buffers); // void clearBufferfv(buffer, GLint drawbuffer, Float32List values, // optional GLuint srcOffset:number= 0); // void clearBufferiv(buffer, GLint drawbuffer, Int32List values, // optional GLuint srcOffset:number= 0); // void clearBufferuiv(buffer, GLint drawbuffer, Uint32List values, // optional GLuint srcOffset:number= 0); // void clearBufferfi(buffer, GLint drawbuffer, GLfloat depth, GLint stencil); // /* Query Objects */ // WebGLQuery ? createQuery(); // void deleteQuery(WebGLQuery ? query); // [WebGLHandlesContextLoss] GLboolean isQuery(WebGLQuery ? query); // void beginQuery(target, WebGLQuery query); // void endQuery(target); // WebGLQuery ? getQuery(target, pname); // any getQueryParameter(WebGLQuery query, pname); // /* Sampler Objects */ // WebGLSampler ? createSampler(); // void deleteSampler(WebGLSampler ? sampler); // [WebGLHandlesContextLoss] GLboolean isSampler(WebGLSampler ? sampler); // void bindSampler(GLuint unit, WebGLSampler ? sampler); // void samplerParameteri(WebGLSampler sampler, pname, GLint param); // void samplerParameterf(WebGLSampler sampler, pname, GLfloat param); // any getSamplerParameter(WebGLSampler sampler, pname); // /* Sync objects */ // WebGLSync ? fenceSync(condition, GLbitfield flags); // [WebGLHandlesContextLoss] GLboolean isSync(WebGLSync ? sync); // void deleteSync(WebGLSync ? sync); // clientWaitSync(WebGLSync sync, GLbitfield flags, GLuint64 timeout); // void waitSync(WebGLSync sync, GLbitfield flags, GLint64 timeout); // any getSyncParameter(WebGLSync sync, pname); // /* Transform Feedback */ // WebGLTransformFeedback ? createTransformFeedback(); // void deleteTransformFeedback(WebGLTransformFeedback ? tf); // [WebGLHandlesContextLoss] GLboolean isTransformFeedback(WebGLTransformFeedback ? tf); // void bindTransformFeedback(target, WebGLTransformFeedback ? tf); // void beginTransformFeedback(primitiveMode); // void endTransformFeedback(); // void transformFeedbackexport constyings(WebGLProgram program, sequence < DOMString > export constyings, bufferMode); // WebGLActiveInfo ? getTransformFeedbackexport constying(WebGLProgram program, GLuint index); // void pauseTransformFeedback(); // void resumeTransformFeedback(); // /* Uniform Buffer Objects and Transform Feedback Buffers */ // void bindBufferBase(target, GLuint index, WebGLBuffer ? buffer); // void bindBufferRange(target, GLuint index, WebGLBuffer ? buffer, GLintptr offset, GLsizeiptr size); // any getIndexedParameter(target, GLuint index); // sequence<GLuint>?getUniformIndices(WebGLProgram program, sequence < DOMString > uniformNames); // any getActiveUniforms(WebGLProgram program, sequence < GLuint > uniformIndices, pname); // GLuint getUniformBlockIndex(WebGLProgram program, DOMString uniformBlockName); // any getActiveUniformBlockParameter(WebGLProgram program, GLuint uniformBlockIndex, pname); // DOMString ? getActiveUniformBlockName(WebGLProgram program, GLuint uniformBlockIndex); // void uniformBlockBinding(WebGLProgram program, GLuint uniformBlockIndex, GLuint uniformBlockBinding); // /* Vertex Array Objects */ // WebGLVertexArrayObject ? createVertexArray(); // void deleteVertexArray(WebGLVertexArrayObject ? vertexArray); // [WebGLHandlesContextLoss] GLboolean isVertexArray(WebGLVertexArrayObject ? vertexArray); // void bindVertexArray(WebGLVertexArrayObject ? array); // }; // interface mixin WebGL2RenderingContextOverloads // { // // WebGL1: // void bufferData(target, GLsizeiptr size, usage); // void bufferData(target, [AllowShared] BufferSource ? srcData, usage); // void bufferSubData(target, GLintptr dstByteOffset, [AllowShared] BufferSource srcData); // // WebGL2: // void bufferData(target, [AllowShared] ArrayBufferView srcData, usage, GLuint srcOffset, // optional GLuint length:number= 0); // void bufferSubData(target, GLintptr dstByteOffset, [AllowShared] ArrayBufferView srcData, // GLuint srcOffset, optional GLuint length:number= 0); // // WebGL1 legacy entrypoints: // void texImage2D(target, GLint level, GLint internalformat, // GLsizei width, GLsizei height, GLint border, format, // type, [AllowShared] ArrayBufferView ? pixels); // void texImage2D(target, GLint level, GLint internalformat, // format, type, TexImageSource source); // May throw DOMException // void texSubImage2D(target, GLint level, GLint xoffset, GLint yoffset, // GLsizei width, GLsizei height, // format, type, [AllowShared] ArrayBufferView ? pixels); // void texSubImage2D(target, GLint level, GLint xoffset, GLint yoffset, // format, type, TexImageSource source); // May throw DOMException // // WebGL2 entrypoints: // void texImage2D(target, GLint level, GLint internalformat, GLsizei width, GLsizei height, // GLint border, format, type, GLintptr pboOffset); // void texImage2D(target, GLint level, GLint internalformat, GLsizei width, GLsizei height, // GLint border, format, type, // TexImageSource source); // May throw DOMException // void texImage2D(target, GLint level, GLint internalformat, GLsizei width, GLsizei height, // GLint border, format, type, [AllowShared] ArrayBufferView srcData, // GLuint srcOffset); // void texSubImage2D(target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, // GLsizei height, format, type, GLintptr pboOffset); // void texSubImage2D(target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, // GLsizei height, format, type, // TexImageSource source); // May throw DOMException // void texSubImage2D(target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, // GLsizei height, format, type, [AllowShared] ArrayBufferView srcData, // GLuint srcOffset); // void compressedTexImage2D(target, GLint level, internalformat, GLsizei width, // GLsizei height, GLint border, GLsizei imageSize, GLintptr offset); // void compressedTexImage2D(target, GLint level, internalformat, GLsizei width, // GLsizei height, GLint border, [AllowShared] ArrayBufferView srcData, // optional GLuint srcOffset:number= 0, optional GLuint srcLengthOverride:number= 0); // void compressedTexSubImage2D(target, GLint level, GLint xoffset, GLint yoffset, // GLsizei width, GLsizei height, format, GLsizei imageSize, GLintptr offset); // void compressedTexSubImage2D(target, GLint level, GLint xoffset, GLint yoffset, // GLsizei width, GLsizei height, format, // [AllowShared] ArrayBufferView srcData, // optional GLuint srcOffset:number= 0, // optional GLuint srcLengthOverride:number= 0); // void uniform1fv(WebGLUniformLocation ? location, Float32List data, optional GLuint srcOffset:number= 0, // optional GLuint srcLength:number= 0); // void uniform2fv(WebGLUniformLocation ? location, Float32List data, optional GLuint srcOffset:number= 0, // optional GLuint srcLength:number= 0); // void uniform3fv(WebGLUniformLocation ? location, Float32List data, optional GLuint srcOffset:number= 0, // optional GLuint srcLength:number= 0); // void uniform4fv(WebGLUniformLocation ? location, Float32List data, optional GLuint srcOffset:number= 0, // optional GLuint srcLength:number= 0); // void uniform1iv(WebGLUniformLocation ? location, Int32List data, optional GLuint srcOffset:number= 0, // optional GLuint srcLength:number= 0); // void uniform2iv(WebGLUniformLocation ? location, Int32List data, optional GLuint srcOffset:number= 0, // optional GLuint srcLength:number= 0); // void uniform3iv(WebGLUniformLocation ? location, Int32List data, optional GLuint srcOffset:number= 0, // optional GLuint srcLength:number= 0); // void uniform4iv(WebGLUniformLocation ? location, Int32List data, optional GLuint srcOffset:number= 0, // optional GLuint srcLength:number= 0); // void uniformMatrix2fv(WebGLUniformLocation ? location, GLboolean transpose, Float32List data, // optional GLuint srcOffset:number= 0, optional GLuint srcLength:number= 0); // void uniformMatrix3fv(WebGLUniformLocation ? location, GLboolean transpose, Float32List data, // optional GLuint srcOffset:number= 0, optional GLuint srcLength:number= 0); // void uniformMatrix4fv(WebGLUniformLocation ? location, GLboolean transpose, Float32List data, // optional GLuint srcOffset:number= 0, optional GLuint srcLength:number= 0); // /* Reading back pixels */ // // WebGL1: // void readPixels(GLint x, GLint y, GLsizei width, GLsizei height, format, type, // [AllowShared] ArrayBufferView ? dstData); // // WebGL2: // void readPixels(GLint x, GLint y, GLsizei width, GLsizei height, format, type, // GLintptr offset); // void readPixels(GLint x, GLint y, GLsizei width, GLsizei height, format, type, // [AllowShared] ArrayBufferView dstData, GLuint dstOffset); // };