package vendor:wasm/WebGL

⌘K
Ctrl+K
or
/

    External Examples 1 ¶

    The programs in odin-lang/examples about this package, and how many of its declarations each uses.

    Index

    Constants (561)
    Variables (0)

    This section is empty.

    Procedures (228)

    Types

    ActiveInfo ¶

    ActiveInfo :: struct {
    	size: int,
    	type: Enum,
    	name: string,
    }

    Related Procedures With Returns

    Buffer ¶

    Buffer :: distinct u32
    External examples wasm/webgl/webgl_triangle

    Related Procedures With Parameters

    ContextAttribute ¶

    ContextAttribute :: enum u32 {
    	disableAlpha                 = 0, 
    	disableAntialias             = 1, 
    	disableDepth                 = 2, 
    	failIfMajorPerformanceCaveat = 3, 
    	disablePremultipliedAlpha    = 4, 
    	preserveDrawingBuffer        = 5, 
    	stencil                      = 6, 
    	desynchronized               = 7, 
    }

    ContextAttributes ¶

    ContextAttributes :: distinct bit_set[ContextAttribute; u32]

    Related Constants

    Enum ¶

    Enum :: distinct u32

    Related Procedures With Parameters

    Related Constants

    Framebuffer ¶

    Framebuffer :: distinct u32

    Related Procedures With Parameters

    Query ¶

    Query :: distinct u32

    Related Procedures With Parameters

    Renderbuffer ¶

    Renderbuffer :: distinct u32

    Related Procedures With Parameters

    Sampler ¶

    Sampler :: distinct u32

    Related Procedures With Parameters

    Shader ¶

    Shader :: distinct u32

    Related Procedures With Parameters

    Sync ¶

    Sync :: distinct u32

    Related Procedures With Parameters

    Texture ¶

    Texture :: distinct u32

    Related Procedures With Parameters

    TransformFeedback ¶

    TransformFeedback :: distinct u32

    Related Procedures With Parameters

    VertexArrayObject ¶

    VertexArrayObject :: distinct u32

    Related Procedures With Parameters

    Constants

    ACTIVE_UNIFORM_BLOCKS ¶

    ACTIVE_UNIFORM_BLOCKS :: Enum(0x8A36)

    ALIASED_LINE_WIDTH_RANGE ¶

    ALIASED_LINE_WIDTH_RANGE :: Enum(0x846E)

    ALIASED_POINT_SIZE_RANGE ¶

    ALIASED_POINT_SIZE_RANGE :: Enum(0x846D)

    ANY_SAMPLES_PASSED_CONSERVATIVE ¶

    ANY_SAMPLES_PASSED_CONSERVATIVE :: Enum(0x8D6A)

    ARRAY_BUFFER ¶

    ARRAY_BUFFER :: Enum(0x8892)
     

    Buffer Objects

    External examples wasm/webgl/webgl_triangle

    ARRAY_BUFFER_BINDING ¶

    ARRAY_BUFFER_BINDING :: Enum(0x8894)

    BACK ¶

    BACK :: Enum(0x0405)
    External examples wasm/webgl/webgl_triangle

    BLEND ¶

    BLEND :: Enum(0x0BE2)
    External examples wasm/webgl/webgl_triangle

    BLEND_DST_RGB ¶

    BLEND_DST_RGB :: Enum(0x80C8)
     

    Separate Blend Functions

    BLEND_EQUATION_ALPHA ¶

    BLEND_EQUATION_ALPHA :: Enum(0x883D)

    BLEND_EQUATION_RGB ¶

    BLEND_EQUATION_RGB :: Enum(0x8009)

    BROWSER_DEFAULT_WEBGL ¶

    BROWSER_DEFAULT_WEBGL :: Enum(0x9244)

    BYTE ¶

    BYTE :: Enum(0x1400)
     

    DataType

    COLOR_BUFFER_BIT ¶

    COLOR_BUFFER_BIT :: Enum(0x00004000)
    External examples wasm/webgl/webgl_triangle

    COLOR_CLEAR_VALUE ¶

    COLOR_CLEAR_VALUE :: Enum(0x0C22)
     

    SCISSOR_TEST

    COMPARE_REF_TO_TEXTURE ¶

    COMPARE_REF_TO_TEXTURE :: Enum(0x884E)

    COMPILE_STATUS ¶

    COMPILE_STATUS :: Enum(0x8B81)
     

    Shader Source

    COMPRESSED_TEXTURE_FORMATS ¶

    COMPRESSED_TEXTURE_FORMATS :: Enum(0x86A3)

    COPY_READ_BUFFER_BINDING ¶

    COPY_READ_BUFFER_BINDING: Enum : COPY_READ_BUFFER
     

    Same as COPY_READ_BUFFER

    COPY_WRITE_BUFFER_BINDING ¶

    COPY_WRITE_BUFFER_BINDING: Enum : COPY_WRITE_BUFFER
     

    Same as COPY_WRITE_BUFFER

    CULL_FACE ¶

    CULL_FACE :: Enum(0x0B44)
     

    EnableCap TEXTURE_2D

    External examples wasm/webgl/webgl_triangle

    CURRENT_VERTEX_ATTRIB ¶

    CURRENT_VERTEX_ATTRIB :: Enum(0x8626)

    CW ¶

    CW :: Enum(0x0900)
     

    FrontFaceDirection

    External examples wasm/webgl/webgl_triangle

    DEFAULT_CONTEXT_ATTRIBUTES ¶

    DEFAULT_CONTEXT_ATTRIBUTES :: ContextAttributes{}
    External examples wasm/webgl/webgl_triangle

    DEPTH_BUFFER_BIT ¶

    DEPTH_BUFFER_BIT :: Enum(0x00000100)
     

    ClearBufferMask

    External examples wasm/webgl/webgl_triangle

    DEPTH_COMPONENT ¶

    DEPTH_COMPONENT :: Enum(0x1902)
     

    PixelFormat

    DEPTH_STENCIL_ATTACHMENT ¶

    DEPTH_STENCIL_ATTACHMENT :: Enum(0x821A)

    DEPTH_TEST ¶

    DEPTH_TEST :: Enum(0x0B71)
    External examples wasm/webgl/webgl_triangle

    DONT_CARE ¶

    DONT_CARE :: Enum(0x1100)
     

    HintMode

    DRAW_FRAMEBUFFER_BINDING ¶

    DRAW_FRAMEBUFFER_BINDING: Enum : FRAMEBUFFER_BINDING
     

    Same as FRAMEBUFFER_BINDING

    DST_COLOR ¶

    DST_COLOR :: Enum(0x0306)
     

    BlendingFactorSrc ZERO ONE

    DYNAMIC_DRAW ¶

    DYNAMIC_DRAW :: Enum(0x88E8)
    External examples wasm/webgl/webgl_triangle

    ELEMENT_ARRAY_BUFFER ¶

    ELEMENT_ARRAY_BUFFER :: Enum(0x8893)

    ELEMENT_ARRAY_BUFFER_BINDING ¶

    ELEMENT_ARRAY_BUFFER_BINDING :: Enum(0x8895)

    FLOAT ¶

    FLOAT :: Enum(0x1406)
    External examples wasm/webgl/webgl_triangle

    FLOAT_32_UNSIGNED_INT_24_8_REV ¶

    FLOAT_32_UNSIGNED_INT_24_8_REV :: Enum(0x8DAD)

    FLOAT_VEC2 ¶

    FLOAT_VEC2 :: Enum(0x8B50)
     

    Uniform Types

    FRAGMENT_SHADER ¶

    FRAGMENT_SHADER :: Enum(0x8B30)
     

    Shaders

    FRAGMENT_SHADER_DERIVATIVE_HINT ¶

    FRAGMENT_SHADER_DERIVATIVE_HINT :: Enum(0x8B8B)

    FRAMEBUFFER ¶

    FRAMEBUFFER :: Enum(0x8D40)
     

    Framebuffer Object.

    FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE ¶

    FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE :: Enum(0x8215)

    FRAMEBUFFER_ATTACHMENT_BLUE_SIZE ¶

    FRAMEBUFFER_ATTACHMENT_BLUE_SIZE :: Enum(0x8214)

    FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING ¶

    FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING :: Enum(0x8210)

    FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE ¶

    FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE :: Enum(0x8211)

    FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE ¶

    FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE :: Enum(0x8216)

    FRAMEBUFFER_ATTACHMENT_GREEN_SIZE ¶

    FRAMEBUFFER_ATTACHMENT_GREEN_SIZE :: Enum(0x8213)

    FRAMEBUFFER_ATTACHMENT_OBJECT_NAME ¶

    FRAMEBUFFER_ATTACHMENT_OBJECT_NAME :: Enum(0x8CD1)

    FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE ¶

    FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE :: Enum(0x8CD0)

    FRAMEBUFFER_ATTACHMENT_RED_SIZE ¶

    FRAMEBUFFER_ATTACHMENT_RED_SIZE :: Enum(0x8212)

    FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE ¶

    FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE :: Enum(0x8217)

    FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE ¶

    FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE :: Enum(0x8CD3)

    FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER ¶

    FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER :: Enum(0x8CD4)

    FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL ¶

    FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL :: Enum(0x8CD2)

    FRAMEBUFFER_BINDING ¶

    FRAMEBUFFER_BINDING :: Enum(0x8CA6)

    FRAMEBUFFER_COMPLETE ¶

    FRAMEBUFFER_COMPLETE :: Enum(0x8CD5)

    FRAMEBUFFER_INCOMPLETE_ATTACHMENT ¶

    FRAMEBUFFER_INCOMPLETE_ATTACHMENT :: Enum(0x8CD6)

    FRAMEBUFFER_INCOMPLETE_DIMENSIONS ¶

    FRAMEBUFFER_INCOMPLETE_DIMENSIONS :: Enum(0x8CD9)

    FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT ¶

    FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT :: Enum(0x8CD7)

    FRAMEBUFFER_INCOMPLETE_MULTISAMPLE ¶

    FRAMEBUFFER_INCOMPLETE_MULTISAMPLE :: Enum(0x8D56)

    FRAMEBUFFER_UNSUPPORTED ¶

    FRAMEBUFFER_UNSUPPORTED :: Enum(0x8CDD)

    FRONT ¶

    FRONT :: Enum(0x0404)
     

    CullFaceMode

    FUNC_ADD ¶

    FUNC_ADD :: Enum(0x8006)
     

    BlendEquationSeparate

    FUNC_REVERSE_SUBTRACT ¶

    FUNC_REVERSE_SUBTRACT :: Enum(0x800B)

    FUNC_SUBTRACT ¶

    FUNC_SUBTRACT :: Enum(0x800A)
     

    BlendSubtract

    GENERATE_MIPMAP_HINT ¶

    GENERATE_MIPMAP_HINT :: Enum(0x8192)
     

    HintTarget

    IMPLEMENTATION_COLOR_READ_FORMAT ¶

    IMPLEMENTATION_COLOR_READ_FORMAT :: Enum(0x8B9B)

    IMPLEMENTATION_COLOR_READ_TYPE ¶

    IMPLEMENTATION_COLOR_READ_TYPE :: Enum(0x8B9A)
     

    Read Format

    INVALID_FRAMEBUFFER_OPERATION ¶

    INVALID_FRAMEBUFFER_OPERATION :: Enum(0x0506)

    INVALID_INDEX ¶

    INVALID_INDEX :: Enum(0xFFFFFFFF)

    KEEP ¶

    KEEP :: Enum(0x1E00)
     

    StencilOp ZERO

    LINEAR_MIPMAP_LINEAR ¶

    LINEAR_MIPMAP_LINEAR :: Enum(0x2703)

    LINEAR_MIPMAP_NEAREST ¶

    LINEAR_MIPMAP_NEAREST :: Enum(0x2701)

    LINE_WIDTH ¶

    LINE_WIDTH :: Enum(0x0B21)
     

    GetPName

    LOW_FLOAT ¶

    LOW_FLOAT :: Enum(0x8DF0)
     

    Shader Precision-Specified Types

    MAX_3D_TEXTURE_SIZE ¶

    MAX_3D_TEXTURE_SIZE :: Enum(0x8073)

    MAX_ARRAY_TEXTURE_LAYERS ¶

    MAX_ARRAY_TEXTURE_LAYERS :: Enum(0x88FF)

    MAX_CLIENT_WAIT_TIMEOUT_WEBGL ¶

    MAX_CLIENT_WAIT_TIMEOUT_WEBGL :: Enum(0x9247)
     

    WebGL-specific enums

    MAX_COLOR_ATTACHMENTS ¶

    MAX_COLOR_ATTACHMENTS :: Enum(0x8CDF)

    MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS ¶

    MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS :: Enum(0x8A33)

    MAX_COMBINED_TEXTURE_IMAGE_UNITS ¶

    MAX_COMBINED_TEXTURE_IMAGE_UNITS :: Enum(0x8B4D)

    MAX_COMBINED_UNIFORM_BLOCKS ¶

    MAX_COMBINED_UNIFORM_BLOCKS :: Enum(0x8A2E)

    MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS ¶

    MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS :: Enum(0x8A31)

    MAX_CUBE_MAP_TEXTURE_SIZE ¶

    MAX_CUBE_MAP_TEXTURE_SIZE :: Enum(0x851C)

    MAX_ELEMENTS_INDICES ¶

    MAX_ELEMENTS_INDICES :: Enum(0x80E9)

    MAX_ELEMENTS_VERTICES ¶

    MAX_ELEMENTS_VERTICES :: Enum(0x80E8)

    MAX_FRAGMENT_INPUT_COMPONENTS ¶

    MAX_FRAGMENT_INPUT_COMPONENTS :: Enum(0x9125)

    MAX_FRAGMENT_UNIFORM_BLOCKS ¶

    MAX_FRAGMENT_UNIFORM_BLOCKS :: Enum(0x8A2D)

    MAX_FRAGMENT_UNIFORM_COMPONENTS ¶

    MAX_FRAGMENT_UNIFORM_COMPONENTS :: Enum(0x8B49)

    MAX_FRAGMENT_UNIFORM_VECTORS ¶

    MAX_FRAGMENT_UNIFORM_VECTORS :: Enum(0x8DFD)

    MAX_PROGRAM_TEXEL_OFFSET ¶

    MAX_PROGRAM_TEXEL_OFFSET :: Enum(0x8905)

    MAX_RENDERBUFFER_SIZE ¶

    MAX_RENDERBUFFER_SIZE :: Enum(0x84E8)

    MAX_SERVER_WAIT_TIMEOUT ¶

    MAX_SERVER_WAIT_TIMEOUT :: Enum(0x9111)

    MAX_TEXTURE_IMAGE_UNITS ¶

    MAX_TEXTURE_IMAGE_UNITS :: Enum(0x8872)

    MAX_TEXTURE_LOD_BIAS ¶

    MAX_TEXTURE_LOD_BIAS :: Enum(0x84FD)

    MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS ¶

    MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS :: Enum(0x8C8A)

    MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS ¶

    MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS :: Enum(0x8C8B)

    MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS ¶

    MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS :: Enum(0x8C80)

    MAX_UNIFORM_BLOCK_SIZE ¶

    MAX_UNIFORM_BLOCK_SIZE :: Enum(0x8A30)

    MAX_UNIFORM_BUFFER_BINDINGS ¶

    MAX_UNIFORM_BUFFER_BINDINGS :: Enum(0x8A2F)

    MAX_VARYING_COMPONENTS ¶

    MAX_VARYING_COMPONENTS :: Enum(0x8B4B)

    MAX_VARYING_VECTORS ¶

    MAX_VARYING_VECTORS :: Enum(0x8DFC)

    MAX_VERTEX_OUTPUT_COMPONENTS ¶

    MAX_VERTEX_OUTPUT_COMPONENTS :: Enum(0x9122)

    MAX_VERTEX_TEXTURE_IMAGE_UNITS ¶

    MAX_VERTEX_TEXTURE_IMAGE_UNITS :: Enum(0x8B4C)

    MAX_VERTEX_UNIFORM_BLOCKS ¶

    MAX_VERTEX_UNIFORM_BLOCKS :: Enum(0x8A2B)

    MAX_VERTEX_UNIFORM_COMPONENTS ¶

    MAX_VERTEX_UNIFORM_COMPONENTS :: Enum(0x8B4A)

    MAX_VERTEX_UNIFORM_VECTORS ¶

    MAX_VERTEX_UNIFORM_VECTORS :: Enum(0x8DFB)

    MIN_PROGRAM_TEXEL_OFFSET ¶

    MIN_PROGRAM_TEXEL_OFFSET :: Enum(0x8904)

    NEAREST ¶

    NEAREST :: Enum(0x2600)
     

    TextureMagFilter

    NEAREST_MIPMAP_LINEAR ¶

    NEAREST_MIPMAP_LINEAR :: Enum(0x2702)

    NEAREST_MIPMAP_NEAREST ¶

    NEAREST_MIPMAP_NEAREST :: Enum(0x2700)
     

    TextureMinFilter NEAREST LINEAR

    NEVER ¶

    NEVER :: Enum(0x0200)
     

    StencilFunction

    NO_ERROR ¶

    NO_ERROR :: Enum(0)
     

    ErrorCode

    ONE_MINUS_CONSTANT_ALPHA ¶

    ONE_MINUS_CONSTANT_ALPHA :: Enum(0x8004)

    ONE_MINUS_CONSTANT_COLOR ¶

    ONE_MINUS_CONSTANT_COLOR :: Enum(0x8002)

    ONE_MINUS_DST_ALPHA ¶

    ONE_MINUS_DST_ALPHA :: Enum(0x0305)

    ONE_MINUS_DST_COLOR ¶

    ONE_MINUS_DST_COLOR :: Enum(0x0307)

    ONE_MINUS_SRC_ALPHA ¶

    ONE_MINUS_SRC_ALPHA :: Enum(0x0303)
    External examples wasm/webgl/webgl_triangle

    ONE_MINUS_SRC_COLOR ¶

    ONE_MINUS_SRC_COLOR :: Enum(0x0301)

    PIXEL_PACK_BUFFER_BINDING ¶

    PIXEL_PACK_BUFFER_BINDING :: Enum(0x88ED)

    PIXEL_UNPACK_BUFFER ¶

    PIXEL_UNPACK_BUFFER :: Enum(0x88EC)

    PIXEL_UNPACK_BUFFER_BINDING ¶

    PIXEL_UNPACK_BUFFER_BINDING :: Enum(0x88EF)

    POINTS ¶

    POINTS :: Enum(0x0000)
     

    BeginMode

    POLYGON_OFFSET_FACTOR ¶

    POLYGON_OFFSET_FACTOR :: Enum(0x8038)
     

    POLYGON_OFFSET_FILL

    POLYGON_OFFSET_FILL ¶

    POLYGON_OFFSET_FILL :: Enum(0x8037)

    POLYGON_OFFSET_UNITS ¶

    POLYGON_OFFSET_UNITS :: Enum(0x2A00)

    QUERY_RESULT_AVAILABLE ¶

    QUERY_RESULT_AVAILABLE :: Enum(0x8867)

    READ_FRAMEBUFFER_BINDING ¶

    READ_FRAMEBUFFER_BINDING :: Enum(0x8CAA)

    RENDERBUFFER_ALPHA_SIZE ¶

    RENDERBUFFER_ALPHA_SIZE :: Enum(0x8D53)

    RENDERBUFFER_BINDING ¶

    RENDERBUFFER_BINDING :: Enum(0x8CA7)

    RENDERBUFFER_BLUE_SIZE ¶

    RENDERBUFFER_BLUE_SIZE :: Enum(0x8D52)

    RENDERBUFFER_DEPTH_SIZE ¶

    RENDERBUFFER_DEPTH_SIZE :: Enum(0x8D54)

    RENDERBUFFER_GREEN_SIZE ¶

    RENDERBUFFER_GREEN_SIZE :: Enum(0x8D51)

    RENDERBUFFER_HEIGHT ¶

    RENDERBUFFER_HEIGHT :: Enum(0x8D43)

    RENDERBUFFER_INTERNAL_FORMAT ¶

    RENDERBUFFER_INTERNAL_FORMAT :: Enum(0x8D44)

    RENDERBUFFER_RED_SIZE ¶

    RENDERBUFFER_RED_SIZE :: Enum(0x8D50)

    RENDERBUFFER_STENCIL_SIZE ¶

    RENDERBUFFER_STENCIL_SIZE :: Enum(0x8D55)

    REPEAT ¶

    REPEAT :: Enum(0x2901)
     

    TextureWrapMode

    SAMPLER_2D_ARRAY_SHADOW ¶

    SAMPLER_2D_ARRAY_SHADOW :: Enum(0x8DC4)

    SAMPLE_ALPHA_TO_COVERAGE ¶

    SAMPLE_ALPHA_TO_COVERAGE :: Enum(0x809E)

    SAMPLE_COVERAGE_INVERT ¶

    SAMPLE_COVERAGE_INVERT :: Enum(0x80AB)

    SAMPLE_COVERAGE_VALUE ¶

    SAMPLE_COVERAGE_VALUE :: Enum(0x80AA)

    SHADING_LANGUAGE_VERSION ¶

    SHADING_LANGUAGE_VERSION :: Enum(0x8B8C)

    SRC_ALPHA ¶

    SRC_ALPHA :: Enum(0x0302)
    External examples wasm/webgl/webgl_triangle

    SRC_ALPHA_SATURATE ¶

    SRC_ALPHA_SATURATE :: Enum(0x0308)

    STENCIL_BACK_PASS_DEPTH_FAIL ¶

    STENCIL_BACK_PASS_DEPTH_FAIL :: Enum(0x8802)

    STENCIL_BACK_PASS_DEPTH_PASS ¶

    STENCIL_BACK_PASS_DEPTH_PASS :: Enum(0x8803)

    STENCIL_BACK_VALUE_MASK ¶

    STENCIL_BACK_VALUE_MASK :: Enum(0x8CA4)

    STENCIL_BACK_WRITEMASK ¶

    STENCIL_BACK_WRITEMASK :: Enum(0x8CA5)

    STENCIL_BUFFER_BIT ¶

    STENCIL_BUFFER_BIT :: Enum(0x00000400)

    STENCIL_CLEAR_VALUE ¶

    STENCIL_CLEAR_VALUE :: Enum(0x0B91)

    STENCIL_PASS_DEPTH_FAIL ¶

    STENCIL_PASS_DEPTH_FAIL :: Enum(0x0B95)

    STENCIL_PASS_DEPTH_PASS ¶

    STENCIL_PASS_DEPTH_PASS :: Enum(0x0B96)

    SYNC_FLUSH_COMMANDS_BIT ¶

    SYNC_FLUSH_COMMANDS_BIT :: Enum(0x00000001)

    SYNC_GPU_COMMANDS_COMPLETE ¶

    SYNC_GPU_COMMANDS_COMPLETE :: Enum(0x9117)

    TEXTURE0 ¶

    TEXTURE0 :: Enum(0x84C0)
     

    TextureUnit

    TEXTURE_2D ¶

    TEXTURE_2D :: Enum(0x0DE1)
     

    TextureTarget

    TEXTURE_BINDING_2D_ARRAY ¶

    TEXTURE_BINDING_2D_ARRAY :: Enum(0x8C1D)

    TEXTURE_BINDING_CUBE_MAP ¶

    TEXTURE_BINDING_CUBE_MAP :: Enum(0x8514)

    TEXTURE_COMPARE_FUNC ¶

    TEXTURE_COMPARE_FUNC :: Enum(0x884D)

    TEXTURE_COMPARE_MODE ¶

    TEXTURE_COMPARE_MODE :: Enum(0x884C)

    TEXTURE_CUBE_MAP_NEGATIVE_X ¶

    TEXTURE_CUBE_MAP_NEGATIVE_X :: Enum(0x8516)

    TEXTURE_CUBE_MAP_NEGATIVE_Y ¶

    TEXTURE_CUBE_MAP_NEGATIVE_Y :: Enum(0x8518)

    TEXTURE_CUBE_MAP_NEGATIVE_Z ¶

    TEXTURE_CUBE_MAP_NEGATIVE_Z :: Enum(0x851A)

    TEXTURE_CUBE_MAP_POSITIVE_X ¶

    TEXTURE_CUBE_MAP_POSITIVE_X :: Enum(0x8515)

    TEXTURE_CUBE_MAP_POSITIVE_Y ¶

    TEXTURE_CUBE_MAP_POSITIVE_Y :: Enum(0x8517)

    TEXTURE_CUBE_MAP_POSITIVE_Z ¶

    TEXTURE_CUBE_MAP_POSITIVE_Z :: Enum(0x8519)

    TEXTURE_IMMUTABLE_FORMAT ¶

    TEXTURE_IMMUTABLE_FORMAT :: Enum(0x912F)

    TEXTURE_IMMUTABLE_LEVELS ¶

    TEXTURE_IMMUTABLE_LEVELS :: Enum(0x82DF)

    TEXTURE_MAG_FILTER ¶

    TEXTURE_MAG_FILTER :: Enum(0x2800)
     

    TextureParameterName

    TRANSFORM_FEEDBACK_ACTIVE ¶

    TRANSFORM_FEEDBACK_ACTIVE :: Enum(0x8E24)

    TRANSFORM_FEEDBACK_BINDING ¶

    TRANSFORM_FEEDBACK_BINDING :: Enum(0x8E25)

    TRANSFORM_FEEDBACK_BUFFER ¶

    TRANSFORM_FEEDBACK_BUFFER :: Enum(0x8C8E)

    TRANSFORM_FEEDBACK_BUFFER_BINDING ¶

    TRANSFORM_FEEDBACK_BUFFER_BINDING :: Enum(0x8C8F)

    TRANSFORM_FEEDBACK_BUFFER_MODE ¶

    TRANSFORM_FEEDBACK_BUFFER_MODE :: Enum(0x8C7F)

    TRANSFORM_FEEDBACK_BUFFER_SIZE ¶

    TRANSFORM_FEEDBACK_BUFFER_SIZE :: Enum(0x8C85)

    TRANSFORM_FEEDBACK_BUFFER_START ¶

    TRANSFORM_FEEDBACK_BUFFER_START :: Enum(0x8C84)

    TRANSFORM_FEEDBACK_PAUSED ¶

    TRANSFORM_FEEDBACK_PAUSED :: Enum(0x8E23)

    TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN ¶

    TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN :: Enum(0x8C88)

    TRANSFORM_FEEDBACK_VARYINGS ¶

    TRANSFORM_FEEDBACK_VARYINGS :: Enum(0x8C83)

    TRIANGLES ¶

    TRIANGLES :: Enum(0x0004)
    External examples wasm/webgl/webgl_triangle

    UNIFORM_BLOCK_ACTIVE_UNIFORMS ¶

    UNIFORM_BLOCK_ACTIVE_UNIFORMS :: Enum(0x8A42)

    UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES ¶

    UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES :: Enum(0x8A43)

    UNIFORM_BLOCK_BINDING ¶

    UNIFORM_BLOCK_BINDING :: Enum(0x8A3F)

    UNIFORM_BLOCK_DATA_SIZE ¶

    UNIFORM_BLOCK_DATA_SIZE :: Enum(0x8A40)

    UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER ¶

    UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER :: Enum(0x8A46)

    UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER ¶

    UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER :: Enum(0x8A44)

    UNIFORM_BUFFER_BINDING ¶

    UNIFORM_BUFFER_BINDING :: Enum(0x8A28)

    UNIFORM_BUFFER_OFFSET_ALIGNMENT ¶

    UNIFORM_BUFFER_OFFSET_ALIGNMENT :: Enum(0x8A34)

    UNIFORM_MATRIX_STRIDE ¶

    UNIFORM_MATRIX_STRIDE :: Enum(0x8A3D)

    UNPACK_COLORSPACE_CONVERSION_WEBGL ¶

    UNPACK_COLORSPACE_CONVERSION_WEBGL :: Enum(0x9243)

    UNPACK_FLIP_Y_WEBGL ¶

    UNPACK_FLIP_Y_WEBGL :: Enum(0x9240)
     

    WebGL-specific enums

    UNPACK_IMAGE_HEIGHT ¶

    UNPACK_IMAGE_HEIGHT :: Enum(0x806E)

    UNPACK_PREMULTIPLY_ALPHA_WEBGL ¶

    UNPACK_PREMULTIPLY_ALPHA_WEBGL :: Enum(0x9241)

    UNPACK_ROW_LENGTH ¶

    UNPACK_ROW_LENGTH :: Enum(0x0CF2)

    UNPACK_SKIP_PIXELS ¶

    UNPACK_SKIP_PIXELS :: Enum(0x0CF4)

    UNSIGNED_BYTE ¶

    UNSIGNED_BYTE :: Enum(0x1401)
    External examples wasm/webgl/webgl_triangle

    UNSIGNED_INT_10F_11F_11F_REV ¶

    UNSIGNED_INT_10F_11F_11F_REV :: Enum(0x8C3B)

    UNSIGNED_INT_2_10_10_10_REV ¶

    UNSIGNED_INT_2_10_10_10_REV :: Enum(0x8368)

    UNSIGNED_INT_5_9_9_9_REV ¶

    UNSIGNED_INT_5_9_9_9_REV :: Enum(0x8C3E)

    UNSIGNED_INT_SAMPLER_2D ¶

    UNSIGNED_INT_SAMPLER_2D :: Enum(0x8DD2)

    UNSIGNED_INT_SAMPLER_2D_ARRAY ¶

    UNSIGNED_INT_SAMPLER_2D_ARRAY :: Enum(0x8DD7)

    UNSIGNED_INT_SAMPLER_3D ¶

    UNSIGNED_INT_SAMPLER_3D :: Enum(0x8DD3)

    UNSIGNED_INT_SAMPLER_CUBE ¶

    UNSIGNED_INT_SAMPLER_CUBE :: Enum(0x8DD4)

    UNSIGNED_SHORT_4_4_4_4 ¶

    UNSIGNED_SHORT_4_4_4_4 :: Enum(0x8033)
     

    PixelType UNSIGNED_BYTE

    UNSIGNED_SHORT_5_5_5_1 ¶

    UNSIGNED_SHORT_5_5_5_1 :: Enum(0x8034)

    UNSIGNED_SHORT_5_6_5 ¶

    UNSIGNED_SHORT_5_6_5 :: Enum(0x8363)

    VENDOR ¶

    VENDOR :: Enum(0x1F00)
     

    StringName

    VERTEX_ATTRIB_ARRAY_BUFFER_BINDING ¶

    VERTEX_ATTRIB_ARRAY_BUFFER_BINDING :: Enum(0x889F)

    VERTEX_ATTRIB_ARRAY_DIVISOR ¶

    VERTEX_ATTRIB_ARRAY_DIVISOR :: Enum(0x88FE)

    VERTEX_ATTRIB_ARRAY_ENABLED ¶

    VERTEX_ATTRIB_ARRAY_ENABLED :: Enum(0x8622)
     

    Vertex Arrays

    VERTEX_ATTRIB_ARRAY_INTEGER ¶

    VERTEX_ATTRIB_ARRAY_INTEGER :: Enum(0x88FD)

    VERTEX_ATTRIB_ARRAY_NORMALIZED ¶

    VERTEX_ATTRIB_ARRAY_NORMALIZED :: Enum(0x886A)

    VERTEX_ATTRIB_ARRAY_POINTER ¶

    VERTEX_ATTRIB_ARRAY_POINTER :: Enum(0x8645)

    VERTEX_ATTRIB_ARRAY_SIZE ¶

    VERTEX_ATTRIB_ARRAY_SIZE :: Enum(0x8623)

    VERTEX_ATTRIB_ARRAY_STRIDE ¶

    VERTEX_ATTRIB_ARRAY_STRIDE :: Enum(0x8624)

    VERTEX_ATTRIB_ARRAY_TYPE ¶

    VERTEX_ATTRIB_ARRAY_TYPE :: Enum(0x8625)

    ZERO ¶

    ZERO :: Enum(0)
     

    BlendingFactorDest

    Variables

    This section is empty.

    Procedures

    ActiveTexture ¶

    ActiveTexture :: proc "contextless" (x: Enum) ---

    AttachShader ¶

    AttachShader :: proc "contextless" (program: Program, shader: Shader) ---

    BeginQuery ¶

    BeginQuery :: proc "contextless" (target: Enum, query: Query) ---

    BeginTransformFeedback ¶

    BeginTransformFeedback :: proc "contextless" (primitiveMode: Enum) ---

    BindAttribLocation ¶

    BindAttribLocation :: proc "contextless" (program: Program, index: i32, name: string) ---

    BindBuffer ¶

    BindBuffer :: proc "contextless" (target: Enum, buffer: Buffer) ---
    External examples wasm/webgl/webgl_triangle

    BindBufferBase ¶

    BindBufferBase :: proc "contextless" (target: Enum, index: i32, buffer: Buffer) ---

    BindBufferRange ¶

    BindBufferRange :: proc "contextless" (
    	target: Enum, 
    	index:  i32, 
    	buffer: Buffer, 
    	offset: int, 
    	size:   int, 
    ) ---

    BindFramebuffer ¶

    BindFramebuffer :: proc "contextless" (target: Enum, framebuffer: Framebuffer) ---

    BindRenderbuffer ¶

    BindRenderbuffer :: proc "contextless" (target: Enum, renderbuffer: Renderbuffer) ---

    BindSampler ¶

    BindSampler :: proc "contextless" (unit: Enum, sampler: Sampler) ---

    BindTexture ¶

    BindTexture :: proc "contextless" (target: Enum, texture: Texture) ---

    BindTransformFeedback ¶

    BindTransformFeedback :: proc "contextless" (target: Enum, tf: TransformFeedback) ---

    BindVertexArray ¶

    BindVertexArray :: proc "contextless" (vertexArray: VertexArrayObject) ---

    BlendColor ¶

    BlendColor :: proc "contextless" (red, green, blue, alpha: f32) ---

    BlendEquation ¶

    BlendEquation :: proc "contextless" (mode: Enum) ---

    BlendEquationSeparate ¶

    BlendEquationSeparate :: proc "contextless" (modeRGB: Enum, modeAlpha: Enum) ---

    BlendFunc ¶

    BlendFunc :: proc "contextless" (sfactor, dfactor: Enum) ---
    External examples wasm/webgl/webgl_triangle

    BlendFuncSeparate ¶

    BlendFuncSeparate :: proc "contextless" (srcRGB, dstRGB, srcAlpha, dstAlpha: Enum) ---

    BlitFramebuffer ¶

    BlitFramebuffer :: proc "contextless" (
    	srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1: i32, 
    	mask:                                                   u32, 
    	filter:                                                 Enum, 
    ) ---
     

    Framebuffer objects

    BufferData ¶

    BufferData :: proc "contextless" (target: Enum, size: int, data: rawptr, usage: Enum) ---
    External examples wasm/webgl/webgl_triangle

    BufferDataSlice ¶

    BufferDataSlice :: proc "contextless" (target: Enum, slice: $S/[]$E, usage: Enum) {…}

    BufferSubData ¶

    BufferSubData :: proc "contextless" (target: Enum, offset: uintptr, size: int, data: rawptr) ---

    BufferSubDataSlice ¶

    BufferSubDataSlice :: proc "contextless" (target: Enum, offset: uintptr, slice: $S/[]$E) {…}

    CheckFramebufferStatus ¶

    CheckFramebufferStatus :: proc "contextless" (target: Enum) -> Enum ---

    Clear ¶

    Clear :: proc "contextless" (bits: u32) ---
    External examples wasm/webgl/webgl_triangle

    ClearBufferfi ¶

    ClearBufferfi :: proc "contextless" (buffer: Enum, drawbuffer: i32, depth: f32, stencil: i32) ---

    ClearBufferfv ¶

    ClearBufferfv :: proc "contextless" (buffer: Enum, drawbuffer: i32, values: []f32) ---

    ClearBufferiv ¶

    ClearBufferiv :: proc "contextless" (buffer: Enum, drawbuffer: i32, values: []i32) ---

    ClearBufferuiv ¶

    ClearBufferuiv :: proc "contextless" (buffer: Enum, drawbuffer: i32, values: []u32) ---

    ClearColor ¶

    ClearColor :: proc "contextless" (r: f32, g: f32, b: f32, a: f32) ---
    External examples wasm/webgl/webgl_triangle

    ClearDepth ¶

    ClearDepth :: proc "contextless" (x: f32) ---

    ClearStencil ¶

    ClearStencil :: proc "contextless" (x: i32) ---

    ClientWaitSync ¶

    ClientWaitSync :: proc "contextless" (sync: Sync, flags: u32, timeout: u64) ---

    ColorMask ¶

    ColorMask :: proc "contextless" (r, g, b, a: bool) ---

    CompileShader ¶

    CompileShader :: proc "contextless" (shader: Shader) ---

    CompressedTexImage2D ¶

    CompressedTexImage2D :: proc "contextless" (
    	target:         Enum, 
    	level:          i32, 
    	internalformat: Enum, 
    	width, height:  i32, 
    	border:         i32, 
    	imageSize:      int, 
    	data:           rawptr, 
    ) ---

    CompressedTexImage2DSlice ¶

    CompressedTexImage2DSlice :: proc "contextless" (
    	target:         Enum, 
    	level:          i32, 
    	internalformat: Enum, 
    	width, height:  i32, 
    	border:         i32, 
    	slice:          $S/[]$E, 
    ) {…}

    CompressedTexImage3D ¶

    CompressedTexImage3D :: proc "contextless" (
    	target:               Enum, 
    	level:                i32, 
    	internalformat:       Enum, 
    	width, height, depth: i32, 
    	border:               i32, 
    	imageSize:            int, 
    	data:                 rawptr, 
    ) ---

    CompressedTexSubImage2D ¶

    CompressedTexSubImage2D :: proc "contextless" (
    	target:                          Enum, 
    	level:                           i32, 
    	xoffset, yoffset, width, height: i32, 
    	format:                          Enum, 
    	imageSize:                       int, 
    	data:                            rawptr, 
    ) ---

    CompressedTexSubImage2DSlice ¶

    CompressedTexSubImage2DSlice :: proc "contextless" (
    	target:                          Enum, 
    	level:                           i32, 
    	xoffset, yoffset, width, height: i32, 
    	format:                          Enum, 
    	slice:                           $S/[]$E, 
    ) {…}

    CompressedTexSubImage3D ¶

    CompressedTexSubImage3D :: proc "contextless" (
    	target:               Enum, 
    	level:                i32, 
    	xoffset, yoffset:     i32, 
    	width, height, depth: i32, 
    	format:               Enum, 
    	imageSize:            int, 
    	data:                 rawptr, 
    ) ---

    CopyBufferSubData ¶

    CopyBufferSubData :: proc "contextless" (
    	readTarget, writeTarget: Enum, 
    	readOffset, writeOffset: int, 
    	size:                    int, 
    ) ---
     

    Buffer objects

    CopyTexImage2D ¶

    CopyTexImage2D :: proc "contextless" (
    	target:              Enum, 
    	level:               i32, 
    	internalformat:      Enum, 
    	x, y, width, height: i32, 
    	border:              i32, 
    ) ---

    CopyTexSubImage2D ¶

    CopyTexSubImage2D :: proc "contextless" (
    	target:                 Enum, 
    	level:                  i32, 
    	xoffset, yoffset, x, y: i32, 
    	width, 
    	height:                 i32, 
    ) ---

    CopyTexSubImage3D ¶

    CopyTexSubImage3D :: proc "contextless" (
    	target:                    Enum, 
    	level:                     i32, 
    	xoffset, yoffset, zoffset: i32, 
    	x, y, width, 
    	height:                    i32, 
    ) ---

    CreateBuffer ¶

    CreateBuffer :: proc "contextless" () -> Buffer ---
    External examples wasm/webgl/webgl_triangle

    CreateCurrentContextById ¶

    CreateCurrentContextById :: proc "contextless" (
    	name:       string, 
    	attributes: ContextAttributes, 
    ) -> bool ---
     

    CreateCurrentContextById must be called before GetCurrentContextAttributes if the user wants to set specific attributes, otherwise the default attributes will be set for the WebGL context

    External examples wasm/webgl/webgl_triangle

    CreateFramebuffer ¶

    CreateFramebuffer :: proc "contextless" () -> Framebuffer ---

    CreateProgram ¶

    CreateProgram :: proc "contextless" () -> Program ---

    CreateProgramFromStrings ¶

    CreateProgramFromStrings :: proc(
    	vs_sources, 
    	fs_sources: []string, 
    ) -> (program: Program, ok: bool) {…}
    External examples wasm/webgl/webgl_triangle

    CreateQuery ¶

    CreateQuery :: proc "contextless" () -> Query ---

    CreateRenderbuffer ¶

    CreateRenderbuffer :: proc "contextless" () -> Renderbuffer ---

    CreateSampler ¶

    CreateSampler :: proc "contextless" () -> Sampler ---

    CreateShader ¶

    CreateShader :: proc "contextless" (shaderType: Enum) -> Shader ---

    CreateTexture ¶

    CreateTexture :: proc "contextless" () -> Texture ---

    CreateTransformFeedback ¶

    CreateTransformFeedback :: proc "contextless" () -> TransformFeedback ---

    CreateVertexArray ¶

    CreateVertexArray :: proc "contextless" () -> VertexArrayObject ---

    CullFace ¶

    CullFace :: proc "contextless" (mode: Enum) ---
    External examples wasm/webgl/webgl_triangle

    DeleteBuffer ¶

    DeleteBuffer :: proc "contextless" (buffer: Buffer) ---

    DeleteFramebuffer ¶

    DeleteFramebuffer :: proc "contextless" (framebuffer: Framebuffer) ---

    DeleteProgram ¶

    DeleteProgram :: proc "contextless" (program: Program) ---

    DeleteQuery ¶

    DeleteQuery :: proc "contextless" (query: Query) ---

    DeleteRenderbuffer ¶

    DeleteRenderbuffer :: proc "contextless" (renderbuffer: Renderbuffer) ---

    DeleteSampler ¶

    DeleteSampler :: proc "contextless" (sampler: Sampler) ---

    DeleteShader ¶

    DeleteShader :: proc "contextless" (shader: Shader) ---

    DeleteSync ¶

    DeleteSync :: proc "contextless" (sync: Sync) ---

    DeleteTexture ¶

    DeleteTexture :: proc "contextless" (texture: Texture) ---

    DeleteTransformFeedback ¶

    DeleteTransformFeedback :: proc "contextless" (tf: TransformFeedback) ---

    DeleteVertexArray ¶

    DeleteVertexArray :: proc "contextless" (vertexArray: VertexArrayObject) ---

    DepthFunc ¶

    DepthFunc :: proc "contextless" (func: Enum) ---

    DepthMask ¶

    DepthMask :: proc "contextless" (flag: bool) ---

    DepthRange ¶

    DepthRange :: proc "contextless" (zNear, zFar: f32) ---

    DetachShader ¶

    DetachShader :: proc "contextless" (program: Program, shader: Shader) ---

    Disable ¶

    Disable :: proc "contextless" (cap: Enum) ---
    External examples wasm/webgl/webgl_triangle

    DisableVertexAttribArray ¶

    DisableVertexAttribArray :: proc "contextless" (index: i32) ---

    DrawArrays ¶

    DrawArrays :: proc "contextless" (mode: Enum, first, count: int) ---
    External examples wasm/webgl/webgl_triangle

    DrawArraysInstanced ¶

    DrawArraysInstanced :: proc "contextless" (mode: Enum, first, count: int, instanceCount: int) ---

    DrawBuffers ¶

    DrawBuffers :: proc "contextless" (buffers: []Enum) ---
     

    Multiple Render Targets

    DrawElements ¶

    DrawElements :: proc "contextless" (mode: Enum, count: int, type: Enum, indices: rawptr) ---

    DrawElementsInstanced ¶

    DrawElementsInstanced :: proc "contextless" (
    	mode:          Enum, 
    	count:         int, 
    	type:          Enum, 
    	offset:        int, 
    	instanceCount: int, 
    ) ---

    DrawRangeElements ¶

    DrawRangeElements :: proc "contextless" (
    	mode:              Enum, 
    	start, end, count: int, 
    	type:              Enum, 
    	offset:            int, 
    ) ---

    DrawingBufferHeight ¶

    DrawingBufferHeight :: proc "contextless" () -> i32 ---

    DrawingBufferWidth ¶

    DrawingBufferWidth :: proc "contextless" () -> i32 ---

    Enable ¶

    Enable :: proc "contextless" (cap: Enum) ---
    External examples wasm/webgl/webgl_triangle

    EnableVertexAttribArray ¶

    EnableVertexAttribArray :: proc "contextless" (index: i32) ---
    External examples wasm/webgl/webgl_triangle

    EndQuery ¶

    EndQuery :: proc "contextless" (target: Enum) ---

    EndTransformFeedback ¶

    EndTransformFeedback :: proc "contextless" () ---

    FenceSync ¶

    FenceSync :: proc "contextless" (condition: Enum, flags: u32) -> Sync ---

    Finish ¶

    Finish :: proc "contextless" () ---

    Flush ¶

    Flush :: proc "contextless" () ---

    FramebufferRenderbuffer ¶

    FramebufferRenderbuffer :: proc "contextless" (
    	target, attachment, renderbufertarget: Enum, 
    	renderbuffer:                          Renderbuffer, 
    ) ---

    FramebufferTexture2D ¶

    FramebufferTexture2D :: proc "contextless" (
    	target, attachment, textarget: Enum, 
    	texture:                       Texture, 
    	level:                         i32, 
    ) ---

    FramebufferTextureLayer ¶

    FramebufferTextureLayer :: proc "contextless" (
    	target:     Enum, 
    	attachment: Enum, 
    	texture:    Texture, 
    	level:      i32, 
    	layer:      i32, 
    ) ---

    FrontFace ¶

    FrontFace :: proc "contextless" (mode: Enum) ---
    External examples wasm/webgl/webgl_triangle

    GenerateMipmap ¶

    GenerateMipmap :: proc "contextless" (target: Enum) ---

    GetActiveAttribAlloc ¶

    GetActiveAttribAlloc :: proc(
    	program:   Program, 
    	index:     u32, 
    	allocator: runtime.Allocator, 
    	loc := #caller_location, 
    ) -> (info: ActiveInfo) {…}

    GetActiveAttribBuf ¶

    GetActiveAttribBuf :: proc "contextless" (
    	program:  Program, 
    	index:    u32, 
    	name_buf: []u8, 
    ) -> (info: ActiveInfo) {…}

    GetActiveUniformAlloc ¶

    GetActiveUniformAlloc :: proc(
    	program:   Program, 
    	index:     u32, 
    	allocator: runtime.Allocator, 
    	loc := #caller_location, 
    ) -> (info: ActiveInfo) {…}

    GetActiveUniformBlockNameAlloc ¶

    GetActiveUniformBlockNameAlloc :: proc(
    	program:           Program, 
    	uniformBlockIndex: i32, 
    	allocator:         runtime.Allocator, 
    	loc := #caller_location, 
    ) -> string {…}

    GetActiveUniformBlockNameBuf ¶

    GetActiveUniformBlockNameBuf :: proc(
    	program:           Program, 
    	uniformBlockIndex: i32, 
    	buf:               []u8, 
    ) -> string {…}

    GetActiveUniformBlockParameter ¶

    GetActiveUniformBlockParameter :: proc "contextless" (
    	program:           Program, 
    	uniformBlockIndex: i32, 
    	pname:             Enum, 
    	params:            [^]i32, 
    ) ---
     

    if pname is UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES then an array will be written at params, in that case the length params need to have is given first querying using pname UNIFORM_BLOCK_ACTIVE_UNIFORMS.

    GetActiveUniformBuf ¶

    GetActiveUniformBuf :: proc "contextless" (
    	program:  Program, 
    	index:    u32, 
    	name_buf: []u8, 
    ) -> (info: ActiveInfo) {…}

    GetActiveUniforms ¶

    GetActiveUniforms :: proc "contextless" (
    	program:        Program, 
    	uniformIndices: []u32, 
    	pname:          Enum, 
    	res:            [^]i32, 
    ) ---

    GetAttribLocation ¶

    GetAttribLocation :: proc "contextless" (program: Program, name: string) -> i32 ---
    External examples wasm/webgl/webgl_triangle

    GetBufferParameter ¶

    GetBufferParameter :: proc "contextless" (target, name: Enum) -> int ---

    GetBufferSubData ¶

    GetBufferSubData :: proc "contextless" (
    	target:        Enum, 
    	srcByteOffset: int, 
    	dst_buffer:    []u8, 
    	dstOffset:     int = 0, 
    	length:        int = 0, 
    ) ---

    GetCurrentContextAttributes ¶

    GetCurrentContextAttributes :: proc "contextless" () -> ContextAttributes ---

    GetESVersion ¶

    GetESVersion :: proc "contextless" (major, minor: ^i32) ---

    GetError ¶

    GetError :: proc "contextless" () -> Enum ---

    GetExtension ¶

    GetExtension :: proc "contextless" (name: string) ---

    GetFragDataLocation ¶

    GetFragDataLocation :: proc "contextless" (program: Program, name: string) -> i32 ---
     

    Programs and shaders

    GetParameter ¶

    GetParameter :: proc "contextless" (pname: Enum) -> i32 ---

    GetParameter4i ¶

    GetParameter4i :: proc "contextless" (pname: Enum, v0, v1, v2, v4: ^i32) ---

    GetProgramInfoLog ¶

    GetProgramInfoLog :: proc "contextless" (program: Program, buf: []u8) -> string {…}

    GetProgramParameter ¶

    GetProgramParameter :: proc "contextless" (program: Program, pname: Enum) -> i32 ---

    GetQuery ¶

    GetQuery :: proc "contextless" (target, pname: Enum) ---

    GetShaderInfoLog ¶

    GetShaderInfoLog :: proc "contextless" (shader: Shader, buf: []u8) -> string {…}

    GetShaderiv ¶

    GetShaderiv :: proc "contextless" (shader: Shader, pname: Enum) -> (p: i32) {…}

    GetUniformBlockIndex ¶

    GetUniformBlockIndex :: proc "contextless" (program: Program, uniformBlockName: string) -> i32 ---

    GetUniformLocation ¶

    GetUniformLocation :: proc "contextless" (program: Program, name: string) -> i32 ---

    GetVertexAttribOffset ¶

    GetVertexAttribOffset :: proc "contextless" (index: i32, pname: Enum) -> uintptr ---

    GetWebGLVersion ¶

    GetWebGLVersion :: proc "contextless" (major, minor: ^i32) ---

    Hint ¶

    Hint :: proc "contextless" (target: Enum, mode: Enum) ---

    InvalidateFramebuffer ¶

    InvalidateFramebuffer :: proc "contextless" (target: Enum, attachments: []Enum) ---

    InvalidateSubFramebuffer ¶

    InvalidateSubFramebuffer :: proc "contextless" (
    	target:      Enum, 
    	attachments: []Enum, 
    	x, y, width, 
    	height:      i32, 
    ) ---

    IsBuffer ¶

    IsBuffer :: proc "contextless" (buffer: Buffer) -> bool ---

    IsEnabled ¶

    IsEnabled :: proc "contextless" (cap: Enum) -> bool ---

    IsExtensionSupported ¶

    IsExtensionSupported :: proc "contextless" (name: string) -> bool ---

    IsFramebuffer ¶

    IsFramebuffer :: proc "contextless" (framebuffer: Framebuffer) -> bool ---

    IsProgram ¶

    IsProgram :: proc "contextless" (program: Program) -> bool ---

    IsQuery ¶

    IsQuery :: proc "contextless" (query: Query) -> bool ---

    IsRenderbuffer ¶

    IsRenderbuffer :: proc "contextless" (renderbuffer: Renderbuffer) -> bool ---

    IsSampler ¶

    IsSampler :: proc "contextless" (sampler: Sampler) -> bool ---

    IsShader ¶

    IsShader :: proc "contextless" (shader: Shader) -> bool ---

    IsSync ¶

    IsSync :: proc "contextless" (sync: Sync) -> bool ---

    IsTexture ¶

    IsTexture :: proc "contextless" (texture: Texture) -> bool ---

    IsTransformFeedback ¶

    IsTransformFeedback :: proc "contextless" (tf: TransformFeedback) -> bool ---

    IsVertexArray ¶

    IsVertexArray :: proc "contextless" (vertexArray: VertexArrayObject) -> bool ---

    IsWebGL2Supported ¶

    IsWebGL2Supported :: proc "contextless" () -> bool {…}

    IterateSupportedExtensions ¶

    IterateSupportedExtensions :: proc(index: ^int, buf: []u8) -> (string, bool) {…}

    LineWidth ¶

    LineWidth :: proc "contextless" (width: f32) ---

    LinkProgram ¶

    LinkProgram :: proc "contextless" (program: Program) ---

    PauseTransformFeedback ¶

    PauseTransformFeedback :: proc "contextless" () ---

    PixelStorei ¶

    PixelStorei :: proc "contextless" (pname: Enum, param: i32) ---

    PolygonOffset ¶

    PolygonOffset :: proc "contextless" (factor: f32, units: f32) ---

    ReadBuffer ¶

    ReadBuffer :: proc "contextless" (src: Enum) ---

    ReadPixelsSlice ¶

    ReadPixelsSlice :: proc "contextless" (
    	x, y, width, height: i32, 
    	format:              Enum, 
    	type:                Enum, 
    	slice:               $S/[]$E, 
    ) {…}

    ReadnPixels ¶

    ReadnPixels :: proc "contextless" (
    	x, y, width, height: i32, 
    	format:              Enum, 
    	type:                Enum, 
    	bufSize:             int, 
    	data:                rawptr, 
    ) ---

    RenderbufferStorage ¶

    RenderbufferStorage :: proc "contextless" (
    	target:         Enum, 
    	internalformat: Enum, 
    	width, 
    	height:         i32, 
    ) ---

    RenderbufferStorageMultisample ¶

    RenderbufferStorageMultisample :: proc "contextless" (
    	target:         Enum, 
    	samples:        i32, 
    	internalformat: Enum, 
    	width, 
    	height:         i32, 
    ) ---
     

    Renderbuffer objects

    ResumeTransformFeedback ¶

    ResumeTransformFeedback :: proc "contextless" () ---

    SampleCoverage ¶

    SampleCoverage :: proc "contextless" (value: f32, invert: bool) ---

    SamplerParameterf ¶

    SamplerParameterf :: proc "contextless" (sampler: Sampler, pname: Enum, param: f32) ---

    SamplerParameteri ¶

    SamplerParameteri :: proc "contextless" (sampler: Sampler, pname: Enum, param: i32) ---

    Scissor ¶

    Scissor :: proc "contextless" (x, y, width, height: i32) ---

    SetCurrentContextById ¶

    SetCurrentContextById :: proc "contextless" (name: string) -> bool ---
     

    Acquire the WebGL context from a canvas element by id

    External examples wasm/webgl/webgl_triangle

    ShaderSource ¶

    ShaderSource :: proc "contextless" (shader: Shader, strings: []string) ---

    StencilFunc ¶

    StencilFunc :: proc "contextless" (func: Enum, ref: i32, mask: u32) ---

    StencilFuncSeparate ¶

    StencilFuncSeparate :: proc "contextless" (face, func: Enum, ref: i32, mask: u32) ---

    StencilMask ¶

    StencilMask :: proc "contextless" (mask: u32) ---

    StencilMaskSeparate ¶

    StencilMaskSeparate :: proc "contextless" (face: Enum, mask: u32) ---

    StencilOp ¶

    StencilOp :: proc "contextless" (fail, zfail, zpass: Enum) ---

    StencilOpSeparate ¶

    StencilOpSeparate :: proc "contextless" (face, fail, zfail, zpass: Enum) ---

    TexImage2D ¶

    TexImage2D :: proc "contextless" (
    	target:         Enum, 
    	level:          i32, 
    	internalformat: Enum, 
    	width, height:  i32, 
    	border:         i32, 
    	format, type:   Enum, 
    	size:           int, 
    	data:           rawptr, 
    ) ---

    TexImage2DSlice ¶

    TexImage2DSlice :: proc "contextless" (
    	target:         Enum, 
    	level:          i32, 
    	internalformat: Enum, 
    	width, height:  i32, 
    	border:         i32, 
    	format, type:   Enum, 
    	slice:          $S/[]$E, 
    ) {…}

    TexImage3D ¶

    TexImage3D :: proc "contextless" (
    	target:               Enum, 
    	level:                i32, 
    	internalformat:       Enum, 
    	width, height, depth: i32, 
    	border:               i32, 
    	format, type:         Enum, 
    	size:                 int, 
    	data:                 rawptr, 
    ) ---

    TexParameterf ¶

    TexParameterf :: proc "contextless" (target, pname: Enum, param: f32) ---

    TexParameteri ¶

    TexParameteri :: proc "contextless" (target, pname: Enum, param: i32) ---

    TexStorage2D ¶

    TexStorage2D :: proc "contextless" (
    	target:         Enum, 
    	levels:         i32, 
    	internalformat: Enum, 
    	width, 
    	height:         i32, 
    ) ---
     

    Texture objects

    TexStorage3D ¶

    TexStorage3D :: proc "contextless" (
    	target:         Enum, 
    	levels:         i32, 
    	internalformat: Enum, 
    	width, height, 
    	depth:          i32, 
    ) ---

    TexSubImage2D ¶

    TexSubImage2D :: proc "contextless" (
    	target:                          Enum, 
    	level:                           i32, 
    	xoffset, yoffset, width, height: i32, 
    	format, type:                    Enum, 
    	size:                            int, 
    	data:                            rawptr, 
    ) ---

    TexSubImage2DSlice ¶

    TexSubImage2DSlice :: proc "contextless" (
    	target:                          Enum, 
    	level:                           i32, 
    	xoffset, yoffset, width, height: i32, 
    	format, type:                    Enum, 
    	slice:                           $S/[]$E, 
    ) {…}

    TexSubImage3D ¶

    TexSubImage3D :: proc "contextless" (
    	target:                                          Enum, 
    	level:                                           i32, 
    	xoffset, yoffset, zoffset, width, height, depth: i32, 
    	format, type:                                    Enum, 
    	size:                                            int, 
    	data:                                            rawptr, 
    ) ---

    TransformFeedbackVaryings ¶

    TransformFeedbackVaryings :: proc "contextless" (
    	program:    Program, 
    	varyings:   []string, 
    	bufferMode: Enum, 
    ) ---

    Uniform1f ¶

    Uniform1f :: proc "contextless" (location: i32, v0: f32) ---

    Uniform1fv ¶

    Uniform1fv :: proc "contextless" (location: i32, v: []f32) {…}

    Uniform1i ¶

    Uniform1i :: proc "contextless" (location: i32, v0: i32) ---

    Uniform1iv ¶

    Uniform1iv :: proc "contextless" (location: i32, v: []i32) {…}

    Uniform1ui ¶

    Uniform1ui :: proc "contextless" (location: i32, v0: u32) ---
     

    Uniforms

    Uniform1uiv ¶

    Uniform1uiv :: proc "contextless" (location: i32, v: u32) {…}

    Uniform2f ¶

    Uniform2f :: proc "contextless" (location: i32, v0, v1: f32) ---

    Uniform2fv ¶

    Uniform2fv :: proc "contextless" (location: i32, v: [][2]f32) {…}

    Uniform2i ¶

    Uniform2i :: proc "contextless" (location: i32, v0, v1: i32) ---

    Uniform2iv ¶

    Uniform2iv :: proc "contextless" (location: i32, v: [][2]i32) {…}

    Uniform2ui ¶

    Uniform2ui :: proc "contextless" (location: i32, v0: u32, v1: u32) ---

    Uniform2uiv ¶

    Uniform2uiv :: proc "contextless" (location: i32, v: [2]u32) {…}

    Uniform3f ¶

    Uniform3f :: proc "contextless" (location: i32, v0, v1, v2: f32) ---

    Uniform3fv ¶

    Uniform3fv :: proc "contextless" (location: i32, v: [][3]f32) {…}

    Uniform3i ¶

    Uniform3i :: proc "contextless" (location: i32, v0, v1, v2: i32) ---

    Uniform3iv ¶

    Uniform3iv :: proc "contextless" (location: i32, v: [][3]i32) {…}

    Uniform3ui ¶

    Uniform3ui :: proc "contextless" (location: i32, v0: u32, v1: u32, v2: u32) ---

    Uniform3uiv ¶

    Uniform3uiv :: proc "contextless" (location: i32, v: [3]u32) {…}

    Uniform4f ¶

    Uniform4f :: proc "contextless" (location: i32, v0, v1, v2, v3: f32) ---

    Uniform4fv ¶

    Uniform4fv :: proc "contextless" (location: i32, v: [][4]f32) {…}

    Uniform4i ¶

    Uniform4i :: proc "contextless" (location: i32, v0, v1, v2, v3: i32) ---

    Uniform4iv ¶

    Uniform4iv :: proc "contextless" (location: i32, v: [][4]i32) {…}

    Uniform4ui ¶

    Uniform4ui :: proc "contextless" (location: i32, v0: u32, v1: u32, v2: u32, v3: u32) ---

    Uniform4uiv ¶

    Uniform4uiv :: proc "contextless" (location: i32, v: [4]u32) {…}

    UniformBlockBinding ¶

    UniformBlockBinding :: proc "contextless" (
    	program:             Program, 
    	uniformBlockIndex:   i32, 
    	uniformBlockBinding: i32, 
    ) ---

    UniformMatrix2fv ¶

    UniformMatrix2fv :: proc "contextless" (location: i32, m: matrix[2, 2]f32) {…}

    UniformMatrix2x3fv ¶

    UniformMatrix2x3fv :: proc "contextless" (location: i32, m: matrix[3, 2]f32) {…}

    UniformMatrix2x4fv ¶

    UniformMatrix2x4fv :: proc "contextless" (location: i32, m: matrix[4, 2]f32) {…}

    UniformMatrix3fv ¶

    UniformMatrix3fv :: proc "contextless" (location: i32, m: matrix[3, 3]f32) {…}

    UniformMatrix3x2fv ¶

    UniformMatrix3x2fv :: proc "contextless" (location: i32, m: matrix[2, 3]f32) {…}

    UniformMatrix3x4fv ¶

    UniformMatrix3x4fv :: proc "contextless" (location: i32, m: matrix[4, 3]f32) {…}

    UniformMatrix4fv ¶

    UniformMatrix4fv :: proc "contextless" (location: i32, m: matrix[4, 4]f32) {…}

    UniformMatrix4x2fv ¶

    UniformMatrix4x2fv :: proc "contextless" (location: i32, m: matrix[2, 4]f32) {…}

    UniformMatrix4x3fv ¶

    UniformMatrix4x3fv :: proc "contextless" (location: i32, m: matrix[3, 4]f32) {…}

    UseProgram ¶

    UseProgram :: proc "contextless" (program: Program) ---
    External examples wasm/webgl/webgl_triangle

    ValidateProgram ¶

    ValidateProgram :: proc "contextless" (program: Program) ---

    VertexAttrib1f ¶

    VertexAttrib1f :: proc "contextless" (index: i32, x: f32) ---

    VertexAttrib1fv ¶

    VertexAttrib1fv :: proc "contextless" (index: i32, v: f32) {…}

    VertexAttrib2f ¶

    VertexAttrib2f :: proc "contextless" (index: i32, x, y: f32) ---

    VertexAttrib2fv ¶

    VertexAttrib2fv :: proc "contextless" (index: i32, v: [2]f32) {…}

    VertexAttrib3f ¶

    VertexAttrib3f :: proc "contextless" (index: i32, x, y, z: f32) ---

    VertexAttrib3fv ¶

    VertexAttrib3fv :: proc "contextless" (index: i32, v: [3]f32) {…}

    VertexAttrib4f ¶

    VertexAttrib4f :: proc "contextless" (index: i32, x, y, z, w: f32) ---

    VertexAttrib4fv ¶

    VertexAttrib4fv :: proc "contextless" (index: i32, v: [4]f32) {…}

    VertexAttribDivisor ¶

    VertexAttribDivisor :: proc "contextless" (index: u32, divisor: u32) ---
     

    Writing to the drawing buffer

    VertexAttribI4i ¶

    VertexAttribI4i :: proc "contextless" (index: i32, x, y, z, w: i32) ---
     

    Vertex attribs

    VertexAttribI4iv ¶

    VertexAttribI4iv :: proc "contextless" (index: i32, v: [4]i32) {…}

    VertexAttribI4ui ¶

    VertexAttribI4ui :: proc "contextless" (index: i32, x, y, z, w: u32) ---

    VertexAttribI4uiv ¶

    VertexAttribI4uiv :: proc "contextless" (index: i32, v: [4]u32) {…}

    VertexAttribIPointer ¶

    VertexAttribIPointer :: proc "contextless" (
    	index:  i32, 
    	size:   int, 
    	type:   Enum, 
    	stride: int, 
    	offset: uintptr, 
    ) ---

    VertexAttribPointer ¶

    VertexAttribPointer :: proc "contextless" (
    	index:      i32, 
    	size:       int, 
    	type:       Enum, 
    	normalized: bool, 
    	stride:     int, 
    	ptr:        uintptr, 
    ) ---
    External examples wasm/webgl/webgl_triangle

    Viewport ¶

    Viewport :: proc "contextless" (x, y, w, h: i32) ---
    External examples wasm/webgl/webgl_triangle

    WaitSync ¶

    WaitSync :: proc "contextless" (sync: Sync, flags: u32, timeout: i64) ---

    Procedure Groups

    Source Files

    Generation Information

    Generated with odin version dev-2026-10 (vendor "odin") Windows_amd64 @ 2026-10-06 16:45:10.733986900 +0000 UTC