W3cubDocs

/DOM

WebGL2RenderingContext.uniform

This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the specification changes.

The WebGL2RenderingContext.uniform[1234][uif][v]() methods of the WebGL API specify values of uniform variables.

ui stands for unsigned integer, i for integer, f for float, and v for vector.
Not all combination are valid: ui can be combined with v, but not i or f. See the syntax table below.

Syntax

void gl.uniform1ui(location, v0); 
void gl.uniform2ui(location, v0, v1); 
void gl.uniform3ui(location, v0, v1, v2); 
void gl.uniform4ui(location, v0, v1, v2, v3); 
void gl.uniform1fv(location, data, optional srcOffset, optional srcLength); 
void gl.uniform2fv(location, data, optional srcOffset, optional srcLength); 
void gl.uniform3fv(location, data, optional srcOffset, optional srcLength);
void gl.uniform4fv(location, data, optional srcOffset, optional srcLength); 
void gl.uniform1iv(location, data, optional srcOffset, optional srcLength); 
void gl.uniform2iv(location, data, optional srcOffset, optional srcLength);
void gl.uniform3iv(location, data, optional srcOffset, optional srcLength); 
void gl.uniform4iv(location, data, optional srcOffset, optional srcLength); 
void gl.uniform1uiv(location, data, optional srcOffset, optional srcLength);
void gl.uniform2uiv(location, data, optional srcOffset, optional srcLength);
void gl.uniform3uiv(location, data, optional srcOffset, optional srcLength); 
void gl.uniform4uiv(location, data, optional srcOffset, optional srcLength);

Parameters

location
A WebGLUniformLocation object containing the location of the uniform attribute to modify.
value, v0, v1, v2, v3
A new value to be used for the uniform variable. Possible types:
  • A Number for unsigned integer values (methods with ui), for integer values (methods with i), or for floats (methods with f).
  • A Uint32Array for unsigned integer vector methods (methods with uiv).

Return value

None.

Specifications

Specification Status Comment
WebGL 2.0
The definition of 'uniform' in that specification.
Editor's Draft Initial definition for WebGL.
OpenGL ES 3.0
The definition of 'glUniform' in that specification.
Standard Man page of the (similar) OpenGL API.

Browser compatibility

Feature Chrome Edge Firefox Internet Explorer Opera Safari Servo
WebGL2RenderingContext.uniform1ui 56 No support 51.0 No support 43 No support No support
WebGL2RenderingContext.uniform1uiv 56 No support 51.0 No support 43 No support No support
WebGL2RenderingContext.uniform2ui 56 No support 51.0 No support 43 No support No support
WebGL2RenderingContext.uniform2uiv 56 No support 51.0 No support 43 No support No support
WebGL2RenderingContext.uniform3ui 56 No support 51.0 No support 43 No support No support
WebGL2RenderingContext.uniform3uiv 56 No support 51.0 No support 43 No support No support
WebGL2RenderingContext.uniform4ui 56 No support 51.0 No support 43 No support No support
WebGL2RenderingContext.uniform4uiv 56 No support 51.0 No support 43 No support No support
WebGL2RenderingContext.uniform1i 56 No support 51.0 No support 43 No support No support
WebGL2RenderingContext.uniform2i 56 No support 51.0 No support 43 No support No support
WebGL2RenderingContext.uniform3i 56 No support 51.0 No support 43 No support No support
WebGL2RenderingContext.uniform4i 56 No support 51.0 No support 43 No support No support
WebGL2RenderingContext.uniform1f 56 No support 51.0 No support 43 No support No support
WebGL2RenderingContext.uniform2f 56 No support 51.0 No support 43 No support No support
WebGL2RenderingContext.uniform3f 56 No support 51.0 No support 43 No support No support
WebGL2RenderingContext.uniform4f 56 No support 51.0 No support 43 No support No support
Feature Android Chrome for Android Edge Mobile Firefox for Android IE Mobile Opera Mobile Safari Mobile
WebGL2RenderingContext.uniform1ui No support No support No support No support No support No support No support
WebGL2RenderingContext.uniform1uiv No support No support No support No support No support No support No support
WebGL2RenderingContext.uniform2ui No support No support No support No support No support No support No support
WebGL2RenderingContext.uniform2uiv No support No support No support No support No support No support No support
WebGL2RenderingContext.uniform3ui No support No support No support No support No support No support No support
WebGL2RenderingContext.uniform3uiv No support No support No support No support No support No support No support
WebGL2RenderingContext.uniform4ui No support No support No support No support No support No support No support
WebGL2RenderingContext.uniform4uiv No support No support No support No support No support No support No support
WebGL2RenderingContext.uniform1i No support No support No support No support No support No support No support
WebGL2RenderingContext.uniform2i No support No support No support No support No support No support No support
WebGL2RenderingContext.uniform3i No support No support No support No support No support No support No support
WebGL2RenderingContext.uniform4i No support No support No support No support No support No support No support
WebGL2RenderingContext.uniform1f No support No support No support No support No support No support No support
WebGL2RenderingContext.uniform2f No support No support No support No support No support No support No support
WebGL2RenderingContext.uniform3f No support No support No support No support No support No support No support
WebGL2RenderingContext.uniform4f No support No support No support No support No support No support No support

See also

© 2005–2017 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WebGL2RenderingContext/uniform