---
title: "WebGL2RenderingContextOverloads | JavaScript maps SDK"
description: "Documentation for MapTiler SDK"
---

# Interface WebGL2RenderingContextOverloads

interface WebGL2RenderingContextOverloads {  
    [bufferData](#bufferdata-1)(target: number, size: number, usage: number): void;  
    [bufferData](#bufferdata-2)(  
        target: number,  
        srcData: [AllowSharedBufferSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.AllowSharedBufferSource/) | null,  
        usage: number,  
    ): void;  
    [bufferData](#bufferdata-3)(  
        target: number,  
        srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>,  
        usage: number,  
        srcOffset: number,  
        length?: number,  
    ): void;  
    [bufferSubData](#buffersubdata-1)(  
        target: number,  
        dstByteOffset: number,  
        srcData: [AllowSharedBufferSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.AllowSharedBufferSource/),  
    ): void;  
    [bufferSubData](#buffersubdata-2)(  
        target: number,  
        dstByteOffset: number,  
        srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>,  
        srcOffset: number,  
        length?: number,  
    ): void;  
    [compressedTexImage2D](#compressedteximage2d-1)(  
        target: number,  
        level: number,  
        internalformat: number,  
        width: number,  
        height: number,  
        border: number,  
        imageSize: number,  
        offset: number,  
    ): void;  
    [compressedTexImage2D](#compressedteximage2d-2)(  
        target: number,  
        level: number,  
        internalformat: number,  
        width: number,  
        height: number,  
        border: number,  
        srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>,  
        srcOffset?: number,  
        srcLengthOverride?: number,  
    ): void;  
    [compressedTexSubImage2D](#compressedtexsubimage2d-1)(  
        target: number,  
        level: number,  
        xoffset: number,  
        yoffset: number,  
        width: number,  
        height: number,  
        format: number,  
        imageSize: number,  
        offset: number,  
    ): void;  
    [compressedTexSubImage2D](#compressedtexsubimage2d-2)(  
        target: number,  
        level: number,  
        xoffset: number,  
        yoffset: number,  
        width: number,  
        height: number,  
        format: number,  
        srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>,  
        srcOffset?: number,  
        srcLengthOverride?: number,  
    ): void;  
    [readPixels](#readpixels-1)(  
        x: number,  
        y: number,  
        width: number,  
        height: number,  
        format: number,  
        type: number,  
        dstData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\> | null,  
    ): void;  
    [readPixels](#readpixels-2)(  
        x: number,  
        y: number,  
        width: number,  
        height: number,  
        format: number,  
        type: number,  
        offset: number,  
    ): void;  
    [readPixels](#readpixels-3)(  
        x: number,  
        y: number,  
        width: number,  
        height: number,  
        format: number,  
        type: number,  
        dstData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>,  
        dstOffset: number,  
    ): void;  
    [texImage2D](#teximage2d-1)(  
        target: number,  
        level: number,  
        internalformat: number,  
        width: number,  
        height: number,  
        border: number,  
        format: number,  
        type: number,  
        pixels: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\> | null,  
    ): void;  
    [texImage2D](#teximage2d-2)(  
        target: number,  
        level: number,  
        internalformat: number,  
        format: number,  
        type: number,  
        source: [TexImageSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.TexImageSource/),  
    ): void;  
    [texImage2D](#teximage2d-3)(  
        target: number,  
        level: number,  
        internalformat: number,  
        width: number,  
        height: number,  
        border: number,  
        format: number,  
        type: number,  
        pboOffset: number,  
    ): void;  
    [texImage2D](#teximage2d-4)(  
        target: number,  
        level: number,  
        internalformat: number,  
        width: number,  
        height: number,  
        border: number,  
        format: number,  
        type: number,  
        source: [TexImageSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.TexImageSource/),  
    ): void;  
    [texImage2D](#teximage2d-5)(  
        target: number,  
        level: number,  
        internalformat: number,  
        width: number,  
        height: number,  
        border: number,  
        format: number,  
        type: number,  
        srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>,  
        srcOffset: number,  
    ): void;  
    [texSubImage2D](#texsubimage2d-1)(  
        target: number,  
        level: number,  
        xoffset: number,  
        yoffset: number,  
        width: number,  
        height: number,  
        format: number,  
        type: number,  
        pixels: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\> | null,  
    ): void;  
    [texSubImage2D](#texsubimage2d-2)(  
        target: number,  
        level: number,  
        xoffset: number,  
        yoffset: number,  
        format: number,  
        type: number,  
        source: [TexImageSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.TexImageSource/),  
    ): void;  
    [texSubImage2D](#texsubimage2d-3)(  
        target: number,  
        level: number,  
        xoffset: number,  
        yoffset: number,  
        width: number,  
        height: number,  
        format: number,  
        type: number,  
        pboOffset: number,  
    ): void;  
    [texSubImage2D](#texsubimage2d-4)(  
        target: number,  
        level: number,  
        xoffset: number,  
        yoffset: number,  
        width: number,  
        height: number,  
        format: number,  
        type: number,  
        source: [TexImageSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.TexImageSource/),  
    ): void;  
    [texSubImage2D](#texsubimage2d-5)(  
        target: number,  
        level: number,  
        xoffset: number,  
        yoffset: number,  
        width: number,  
        height: number,  
        format: number,  
        type: number,  
        srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>,  
        srcOffset: number,  
    ): void;  
    [uniform1fv](#uniform1fv-1)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniform1fv](#uniform1fv-2)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniform1iv](#uniform1iv-1)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Int32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Int32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniform1iv](#uniform1iv-2)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniform2fv](#uniform2fv-1)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniform2fv](#uniform2fv-2)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniform2iv](#uniform2iv-1)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Int32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Int32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniform2iv](#uniform2iv-2)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniform3fv](#uniform3fv-1)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniform3fv](#uniform3fv-2)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniform3iv](#uniform3iv-1)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Int32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Int32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniform3iv](#uniform3iv-2)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniform4fv](#uniform4fv-1)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniform4fv](#uniform4fv-2)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniform4iv](#uniform4iv-1)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Int32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Int32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniform4iv](#uniform4iv-2)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniformMatrix2fv](#uniformmatrix2fv-1)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        transpose: boolean,  
        data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniformMatrix2fv](#uniformmatrix2fv-2)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        transpose: boolean,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniformMatrix3fv](#uniformmatrix3fv-1)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        transpose: boolean,  
        data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniformMatrix3fv](#uniformmatrix3fv-2)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        transpose: boolean,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniformMatrix4fv](#uniformmatrix4fv-1)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        transpose: boolean,  
        data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
    [uniformMatrix4fv](#uniformmatrix4fv-2)(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        transpose: boolean,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void;  
}

#### Hierarchy ([View Summary](https://docs.maptiler.com/sdk-js/api-reference/hierarchy/#Externals.WebGL2RenderingContextOverloads))

-   WebGL2RenderingContextOverloads
    -   [WebGL2RenderingContext](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGL2RenderingContext/)

##### Index

### Methods[](#methods)

[bufferData](#bufferdata) [bufferSubData](#buffersubdata) [compressedTexImage2D](#compressedteximage2d) [compressedTexSubImage2D](#compressedtexsubimage2d) [readPixels](#readpixels) [texImage2D](#teximage2d) [texSubImage2D](#texsubimage2d) [uniform1fv](#uniform1fv) [uniform1iv](#uniform1iv) [uniform2fv](#uniform2fv) [uniform2iv](#uniform2iv) [uniform3fv](#uniform3fv) [uniform3iv](#uniform3iv) [uniform4fv](#uniform4fv) [uniform4iv](#uniform4iv) [uniformMatrix2fv](#uniformmatrix2fv) [uniformMatrix3fv](#uniformmatrix3fv) [uniformMatrix4fv](#uniformmatrix4fv)

## Methods[](#methods-1)

### bufferData[](#bufferdata)

-   bufferData(target: number, size: number, usage: number): void[](#bufferdata-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/bufferData)
    
    #### Parameters
    
    -   target: number
    -   size: number
    -   usage: number
    
    #### Returns void
    
-   bufferData(  
        target: number,  
        srcData: [AllowSharedBufferSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.AllowSharedBufferSource/) | null,  
        usage: number,  
    ): void[](#bufferdata-2)
    
    #### Parameters
    
    -   target: number
    -   srcData: [AllowSharedBufferSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.AllowSharedBufferSource/) | null
    -   usage: number
    
    #### Returns void
    
-   bufferData(  
        target: number,  
        srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>,  
        usage: number,  
        srcOffset: number,  
        length?: number,  
    ): void[](#bufferdata-3)
    
    #### Parameters
    
    -   target: number
    -   srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>
    -   usage: number
    -   srcOffset: number
    -   `Optional`length: number
    
    #### Returns void
    

### bufferSubData[](#buffersubdata)

-   bufferSubData(  
        target: number,  
        dstByteOffset: number,  
        srcData: [AllowSharedBufferSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.AllowSharedBufferSource/),  
    ): void[](#buffersubdata-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/bufferSubData)
    
    #### Parameters
    
    -   target: number
    -   dstByteOffset: number
    -   srcData: [AllowSharedBufferSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.AllowSharedBufferSource/)
    
    #### Returns void
    
-   bufferSubData(  
        target: number,  
        dstByteOffset: number,  
        srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>,  
        srcOffset: number,  
        length?: number,  
    ): void[](#buffersubdata-2)
    
    #### Parameters
    
    -   target: number
    -   dstByteOffset: number
    -   srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>
    -   srcOffset: number
    -   `Optional`length: number
    
    #### Returns void
    

### compressedTexImage2D[](#compressedteximage2d)

-   compressedTexImage2D(  
        target: number,  
        level: number,  
        internalformat: number,  
        width: number,  
        height: number,  
        border: number,  
        imageSize: number,  
        offset: number,  
    ): void[](#compressedteximage2d-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/compressedTexImage2D)
    
    #### Parameters
    
    -   target: number
    -   level: number
    -   internalformat: number
    -   width: number
    -   height: number
    -   border: number
    -   imageSize: number
    -   offset: number
    
    #### Returns void
    
-   compressedTexImage2D(  
        target: number,  
        level: number,  
        internalformat: number,  
        width: number,  
        height: number,  
        border: number,  
        srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>,  
        srcOffset?: number,  
        srcLengthOverride?: number,  
    ): void[](#compressedteximage2d-2)
    
    #### Parameters
    
    -   target: number
    -   level: number
    -   internalformat: number
    -   width: number
    -   height: number
    -   border: number
    -   srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>
    -   `Optional`srcOffset: number
    -   `Optional`srcLengthOverride: number
    
    #### Returns void
    

### compressedTexSubImage2D[](#compressedtexsubimage2d)

-   compressedTexSubImage2D(  
        target: number,  
        level: number,  
        xoffset: number,  
        yoffset: number,  
        width: number,  
        height: number,  
        format: number,  
        imageSize: number,  
        offset: number,  
    ): void[](#compressedtexsubimage2d-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/compressedTexSubImage2D)
    
    #### Parameters
    
    -   target: number
    -   level: number
    -   xoffset: number
    -   yoffset: number
    -   width: number
    -   height: number
    -   format: number
    -   imageSize: number
    -   offset: number
    
    #### Returns void
    
-   compressedTexSubImage2D(  
        target: number,  
        level: number,  
        xoffset: number,  
        yoffset: number,  
        width: number,  
        height: number,  
        format: number,  
        srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>,  
        srcOffset?: number,  
        srcLengthOverride?: number,  
    ): void[](#compressedtexsubimage2d-2)
    
    #### Parameters
    
    -   target: number
    -   level: number
    -   xoffset: number
    -   yoffset: number
    -   width: number
    -   height: number
    -   format: number
    -   srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>
    -   `Optional`srcOffset: number
    -   `Optional`srcLengthOverride: number
    
    #### Returns void
    

### readPixels[](#readpixels)

-   readPixels(  
        x: number,  
        y: number,  
        width: number,  
        height: number,  
        format: number,  
        type: number,  
        dstData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\> | null,  
    ): void[](#readpixels-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/readPixels)
    
    #### Parameters
    
    -   x: number
    -   y: number
    -   width: number
    -   height: number
    -   format: number
    -   type: number
    -   dstData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\> | null
    
    #### Returns void
    
-   readPixels(  
        x: number,  
        y: number,  
        width: number,  
        height: number,  
        format: number,  
        type: number,  
        offset: number,  
    ): void[](#readpixels-2)
    
    #### Parameters
    
    -   x: number
    -   y: number
    -   width: number
    -   height: number
    -   format: number
    -   type: number
    -   offset: number
    
    #### Returns void
    
-   readPixels(  
        x: number,  
        y: number,  
        width: number,  
        height: number,  
        format: number,  
        type: number,  
        dstData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>,  
        dstOffset: number,  
    ): void[](#readpixels-3)
    
    #### Parameters
    
    -   x: number
    -   y: number
    -   width: number
    -   height: number
    -   format: number
    -   type: number
    -   dstData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>
    -   dstOffset: number
    
    #### Returns void
    

### texImage2D[](#teximage2d)

-   texImage2D(  
        target: number,  
        level: number,  
        internalformat: number,  
        width: number,  
        height: number,  
        border: number,  
        format: number,  
        type: number,  
        pixels: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\> | null,  
    ): void[](#teximage2d-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texImage2D)
    
    #### Parameters
    
    -   target: number
    -   level: number
    -   internalformat: number
    -   width: number
    -   height: number
    -   border: number
    -   format: number
    -   type: number
    -   pixels: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\> | null
    
    #### Returns void
    
-   texImage2D(  
        target: number,  
        level: number,  
        internalformat: number,  
        format: number,  
        type: number,  
        source: [TexImageSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.TexImageSource/),  
    ): void[](#teximage2d-2)
    
    #### Parameters
    
    -   target: number
    -   level: number
    -   internalformat: number
    -   format: number
    -   type: number
    -   source: [TexImageSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.TexImageSource/)
    
    #### Returns void
    
-   texImage2D(  
        target: number,  
        level: number,  
        internalformat: number,  
        width: number,  
        height: number,  
        border: number,  
        format: number,  
        type: number,  
        pboOffset: number,  
    ): void[](#teximage2d-3)
    
    #### Parameters
    
    -   target: number
    -   level: number
    -   internalformat: number
    -   width: number
    -   height: number
    -   border: number
    -   format: number
    -   type: number
    -   pboOffset: number
    
    #### Returns void
    
-   texImage2D(  
        target: number,  
        level: number,  
        internalformat: number,  
        width: number,  
        height: number,  
        border: number,  
        format: number,  
        type: number,  
        source: [TexImageSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.TexImageSource/),  
    ): void[](#teximage2d-4)
    
    #### Parameters
    
    -   target: number
    -   level: number
    -   internalformat: number
    -   width: number
    -   height: number
    -   border: number
    -   format: number
    -   type: number
    -   source: [TexImageSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.TexImageSource/)
    
    #### Returns void
    
-   texImage2D(  
        target: number,  
        level: number,  
        internalformat: number,  
        width: number,  
        height: number,  
        border: number,  
        format: number,  
        type: number,  
        srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>,  
        srcOffset: number,  
    ): void[](#teximage2d-5)
    
    #### Parameters
    
    -   target: number
    -   level: number
    -   internalformat: number
    -   width: number
    -   height: number
    -   border: number
    -   format: number
    -   type: number
    -   srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>
    -   srcOffset: number
    
    #### Returns void
    

### texSubImage2D[](#texsubimage2d)

-   texSubImage2D(  
        target: number,  
        level: number,  
        xoffset: number,  
        yoffset: number,  
        width: number,  
        height: number,  
        format: number,  
        type: number,  
        pixels: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\> | null,  
    ): void[](#texsubimage2d-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texSubImage2D)
    
    #### Parameters
    
    -   target: number
    -   level: number
    -   xoffset: number
    -   yoffset: number
    -   width: number
    -   height: number
    -   format: number
    -   type: number
    -   pixels: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\> | null
    
    #### Returns void
    
-   texSubImage2D(  
        target: number,  
        level: number,  
        xoffset: number,  
        yoffset: number,  
        format: number,  
        type: number,  
        source: [TexImageSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.TexImageSource/),  
    ): void[](#texsubimage2d-2)
    
    #### Parameters
    
    -   target: number
    -   level: number
    -   xoffset: number
    -   yoffset: number
    -   format: number
    -   type: number
    -   source: [TexImageSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.TexImageSource/)
    
    #### Returns void
    
-   texSubImage2D(  
        target: number,  
        level: number,  
        xoffset: number,  
        yoffset: number,  
        width: number,  
        height: number,  
        format: number,  
        type: number,  
        pboOffset: number,  
    ): void[](#texsubimage2d-3)
    
    #### Parameters
    
    -   target: number
    -   level: number
    -   xoffset: number
    -   yoffset: number
    -   width: number
    -   height: number
    -   format: number
    -   type: number
    -   pboOffset: number
    
    #### Returns void
    
-   texSubImage2D(  
        target: number,  
        level: number,  
        xoffset: number,  
        yoffset: number,  
        width: number,  
        height: number,  
        format: number,  
        type: number,  
        source: [TexImageSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.TexImageSource/),  
    ): void[](#texsubimage2d-4)
    
    #### Parameters
    
    -   target: number
    -   level: number
    -   xoffset: number
    -   yoffset: number
    -   width: number
    -   height: number
    -   format: number
    -   type: number
    -   source: [TexImageSource](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.TexImageSource/)
    
    #### Returns void
    
-   texSubImage2D(  
        target: number,  
        level: number,  
        xoffset: number,  
        yoffset: number,  
        width: number,  
        height: number,  
        format: number,  
        type: number,  
        srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>,  
        srcOffset: number,  
    ): void[](#texsubimage2d-5)
    
    #### Parameters
    
    -   target: number
    -   level: number
    -   xoffset: number
    -   yoffset: number
    -   width: number
    -   height: number
    -   format: number
    -   type: number
    -   srcData: [ArrayBufferView](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayBufferView/)<[ArrayBufferLike](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.ArrayBufferLike/)\>
    -   srcOffset: number
    
    #### Returns void
    

### uniform1fv[](#uniform1fv)

-   uniform1fv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniform1fv-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/)
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    
-   uniform1fv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniform1fv-2)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    

### uniform1iv[](#uniform1iv)

-   uniform1iv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Int32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Int32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniform1iv-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   data: [Int32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Int32List/)
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    
-   uniform1iv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniform1iv-2)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    

### uniform2fv[](#uniform2fv)

-   uniform2fv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniform2fv-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/)
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    
-   uniform2fv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniform2fv-2)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    

### uniform2iv[](#uniform2iv)

-   uniform2iv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Int32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Int32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniform2iv-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   data: [Int32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Int32List/)
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    
-   uniform2iv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniform2iv-2)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    

### uniform3fv[](#uniform3fv)

-   uniform3fv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniform3fv-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/)
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    
-   uniform3fv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniform3fv-2)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    

### uniform3iv[](#uniform3iv)

-   uniform3iv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Int32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Int32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniform3iv-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   data: [Int32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Int32List/)
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    
-   uniform3iv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniform3iv-2)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    

### uniform4fv[](#uniform4fv)

-   uniform4fv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniform4fv-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/)
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    
-   uniform4fv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniform4fv-2)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    

### uniform4iv[](#uniform4iv)

-   uniform4iv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Int32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Int32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniform4iv-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   data: [Int32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Int32List/)
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    
-   uniform4iv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniform4iv-2)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    

### uniformMatrix2fv[](#uniformmatrix2fv)

-   uniformMatrix2fv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        transpose: boolean,  
        data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniformmatrix2fv-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   transpose: boolean
    -   data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/)
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    
-   uniformMatrix2fv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        transpose: boolean,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniformmatrix2fv-2)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   transpose: boolean
    -   data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    

### uniformMatrix3fv[](#uniformmatrix3fv)

-   uniformMatrix3fv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        transpose: boolean,  
        data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniformmatrix3fv-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   transpose: boolean
    -   data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/)
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    
-   uniformMatrix3fv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        transpose: boolean,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniformmatrix3fv-2)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   transpose: boolean
    -   data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    

### uniformMatrix4fv[](#uniformmatrix4fv)

-   uniformMatrix4fv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        transpose: boolean,  
        data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/),  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniformmatrix4fv-1)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   transpose: boolean
    -   data: [Float32List](https://docs.maptiler.com/sdk-js/api-reference/types/Externals.Float32List/)
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
    
-   uniformMatrix4fv(  
        location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null,  
        transpose: boolean,  
        data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>,  
        srcOffset?: number,  
        srcLength?: number,  
    ): void[](#uniformmatrix4fv-2)
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix)
    
    #### Parameters
    
    -   location: [WebGLUniformLocation](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.WebGLUniformLocation/) | null
    -   transpose: boolean
    -   data: [Iterable](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.Iterable/)<number\>
    -   `Optional`srcOffset: number
    -   `Optional`srcLength: number
    
    #### Returns void
