diff options
Diffstat (limited to 'src/library_gl.js')
-rw-r--r-- | src/library_gl.js | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/library_gl.js b/src/library_gl.js index 85c0290e..6f99969e 100644 --- a/src/library_gl.js +++ b/src/library_gl.js @@ -436,6 +436,33 @@ var LibraryGL = { Module.ctx.uniform4i(location, v0, v1, v2, v3); }, + glUniform1iv: function(location, count, value) { + location = GL.uniforms[location]; + value = new Int32Array(TypedArray_copy(value, count*4)); // TODO: optimize + Module.ctx.uniform1iv(location, value); + }, + + glUniform2iv: function(location, count, value) { + location = GL.uniforms[location]; + count *= 2; + value = new Int32Array(TypedArray_copy(value, count*4)); // TODO: optimize + Module.ctx.uniform2iv(location, value); + }, + + glUniform3iv: function(location, count, value) { + location = GL.uniforms[location]; + count *= 3; + value = new Int32Array(TypedArray_copy(value, count*4)); // TODO: optimize + Module.ctx.uniform3iv(location, value); + }, + + glUniform4iv: function(location, count, value) { + location = GL.uniforms[location]; + count *= 4; + value = new Int32Array(TypedArray_copy(value, count*4)); // TODO: optimize + Module.ctx.uniform4iv(location, value); + }, + glUniform1fv: function(location, count, value) { location = GL.uniforms[location]; value = new Float32Array(TypedArray_copy(value, count*4)); // TODO: optimize |