aboutsummaryrefslogtreecommitdiff
path: root/src/webGLClient.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/webGLClient.js')
-rw-r--r--src/webGLClient.js135
1 files changed, 68 insertions, 67 deletions
diff --git a/src/webGLClient.js b/src/webGLClient.js
index 1ae7332d..b3aa57b5 100644
--- a/src/webGLClient.js
+++ b/src/webGLClient.js
@@ -8,71 +8,71 @@ function WebGLClient() {
var objects = {};
var calls = {
- 0: { name: 'NULL' },
- 1: { name: 'getExtension' },
- 2: { name: 'enable' },
- 3: { name: 'disable' },
- 4: { name: 'clear' },
- 5: { name: 'clearColor' },
- 6: { name: 'createShader' },
- 7: { name: 'deleteShader' },
- 8: { name: 'shaderSource' },
- 9: { name: 'compileShader' },
- 10: { name: 'createProgram' },
- 11: { name: 'deleteProgram' },
- 12: { name: 'attachShader' },
- 13: { name: 'bindAttribLocation' },
- 14: { name: 'linkProgram' },
- 15: { name: 'getProgramParameter' },
- 16: { name: 'getUniformLocation' },
- 17: { name: 'useProgram' },
- 18: { name: 'uniform1i' },
- 19: { name: 'uniform1f' },
- 20: { name: 'uniform3fv' },
- 21: { name: 'uniform4fv' },
- 22: { name: 'uniformMatrix4fv' },
- 23: { name: 'vertexAttrib4fv' },
- 24: { name: 'createBuffer' },
- 25: { name: 'deleteBuffer' },
- 26: { name: 'bindBuffer' },
- 27: { name: 'bufferData' },
- 28: { name: 'bufferSubData' },
- 29: { name: 'viewport' },
- 30: { name: 'vertexAttribPointer' },
- 31: { name: 'enableVertexAttribArray' },
- 32: { name: 'disableVertexAttribArray' },
- 33: { name: 'drawArrays' },
- 34: { name: 'drawElements' },
- 35: { name: 'getError' },
- 36: { name: 'createTexture' },
- 37: { name: 'deleteTexture' },
- 38: { name: 'bindTexture' },
- 39: { name: 'texParameteri' },
- 40: { name: 'texImage2D' },
- 41: { name: 'compressedTexImage2D' },
- 42: { name: 'activeTexture' },
- 43: { name: 'getShaderParameter' },
- 44: { name: 'clearDepth' },
- 45: { name: 'depthFunc' },
- 46: { name: 'frontFace' },
- 47: { name: 'cullFace' },
- 48: { name: 'pixelStorei' },
- 49: { name: 'depthMask' },
- 50: { name: 'depthRange' },
- 51: { name: 'blendFunc' },
- 52: { name: 'scissor' },
- 53: { name: 'colorMask' },
- 54: { name: 'lineWidth' },
- 55: { name: 'createFramebuffer' },
- 56: { name: 'deleteFramebuffer' },
- 57: { name: 'bindFramebuffer' },
- 58: { name: 'framebufferTexture2D' },
- 59: { name: 'createRenderbuffer' },
- 60: { name: 'deleteRenderbuffer' },
- 61: { name: 'bindRenderbuffer' },
- 62: { name: 'renderbufferStorage' },
- 63: { name: 'framebufferRenderbuffer' },
- 64: { name: 'debugPrint' },
+ 0: { name: 'NULL', args: 0 },
+ 1: { name: 'getExtension', args: 1 },
+ 2: { name: 'enable', args: 1 },
+ 3: { name: 'disable', args: 1 },
+ 4: { name: 'clear', args: 1 },
+ 5: { name: 'clearColor', args: 4 },
+ 6: { name: 'createShader', args: -2 },
+ 7: { name: 'deleteShader', args: 1 },
+ 8: { name: 'shaderSource', args: 2 },
+ 9: { name: 'compileShader', args: 1 },
+ 10: { name: 'createProgram', args: -1 },
+ 11: { name: 'deleteProgram', args: 1 },
+ 12: { name: 'attachShader', args: 2 },
+ 13: { name: 'bindAttribLocation', args: 3 },
+ 14: { name: 'linkProgram', args: 1 },
+ 15: { name: 'getProgramParameter', args: 2 },
+ 16: { name: 'getUniformLocation', args: -3 },
+ 17: { name: 'useProgram', args: 1 },
+ 18: { name: 'uniform1i', args: 2 },
+ 19: { name: 'uniform1f', args: 2 },
+ 20: { name: 'uniform3fv', args: 2 },
+ 21: { name: 'uniform4fv', args: 2 },
+ 22: { name: 'uniformMatrix4fv', args: 3 },
+ 23: { name: 'vertexAttrib4fv', args: 2 },
+ 24: { name: 'createBuffer', args: -1 },
+ 25: { name: 'deleteBuffer', args: 1 },
+ 26: { name: 'bindBuffer', args: 2 },
+ 27: { name: 'bufferData', args: 3 },
+ 28: { name: 'bufferSubData', args: 3 },
+ 29: { name: 'viewport', args: 4 },
+ 30: { name: 'vertexAttribPointer', args: 6 },
+ 31: { name: 'enableVertexAttribArray', args: 1 },
+ 32: { name: 'disableVertexAttribArray', args: 1 },
+ 33: { name: 'drawArrays', args: 3 },
+ 34: { name: 'drawElements', args: 4 },
+ 35: { name: 'getError', args: 0 },
+ 36: { name: 'createTexture', args: -1 },
+ 37: { name: 'deleteTexture', args: 1 },
+ 38: { name: 'bindTexture', args: 2 },
+ 39: { name: 'texParameteri', args: 3 },
+ 40: { name: 'texImage2D', args: 9 },
+ 41: { name: 'compressedTexImage2D', args: 7 },
+ 42: { name: 'activeTexture', args: 1 },
+ 43: { name: 'getShaderParameter', args: 2 },
+ 44: { name: 'clearDepth', args: 1 },
+ 45: { name: 'depthFunc', args: 1 },
+ 46: { name: 'frontFace', args: 1 },
+ 47: { name: 'cullFace', args: 1 },
+ 48: { name: 'pixelStorei', args: 2 },
+ 49: { name: 'depthMask', args: 1 },
+ 50: { name: 'depthRange', args: 2 },
+ 51: { name: 'blendFunc', args: 2 },
+ 52: { name: 'scissor', args: 4 },
+ 53: { name: 'colorMask', args: 4 },
+ 54: { name: 'lineWidth', args: 1 },
+ 55: { name: 'createFramebuffer', args: -1 },
+ 56: { name: 'deleteFramebuffer', args: 1 },
+ 57: { name: 'bindFramebuffer', args: 2 },
+ 58: { name: 'framebufferTexture2D', args: 5 },
+ 59: { name: 'createRenderbuffer', args: -1 },
+ 60: { name: 'deleteRenderbuffer', args: 1 },
+ 61: { name: 'bindRenderbuffer', args: 2 },
+ 62: { name: 'renderbufferStorage', args: 4 },
+ 63: { name: 'framebufferRenderbuffer', args: 4 },
+ 64: { name: 'debugPrint', args: 1 },
};
function fixArgs(command, args) {
@@ -118,9 +118,10 @@ function WebGLClient() {
var len = buffer.length;
//dump('issuing commands, buffer len: ' + len + '\n');
while (i < len) {
- var command = calls[buffer[i++]].name;
+ var info = calls[buffer[i++]];
+ var command = info.name;
assert(typeof command === 'string')
- var numArgs = buffer[i++];
+ var numArgs = info.args;
assert(typeof numArgs === 'number', command);
//dump('issue ' + [command, numArgs, 'peek:' + buffer.slice(i, i+5)] + '\n');
if (numArgs === 0) {