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