@@ -31,7 +31,7 @@ Elm.Native.Graphics.WebGL.make = function(elm) {
32 var guid = Utils.guid();
32 var guid = Utils.guid();
34− console.log("Wrapped program #" + guid);
34+ //console.log("Wrapped program #" + guid);
36 return program = {
36 return program = {
37 guid: guid,
37 guid: guid,
@@ -61,7 +61,7 @@ Elm.Native.Graphics.WebGL.make = function(elm) {
61 var vshader = createShader(vSrc, gl.VERTEX_SHADER);
61 var vshader = createShader(vSrc, gl.VERTEX_SHADER);
62 var fshader = createShader(fSrc, gl.FRAGMENT_SHADER);
62 var fshader = createShader(fSrc, gl.FRAGMENT_SHADER);
63 var program = gl.createProgram();
63 var program = gl.createProgram();
64− console.log("Created shaders and program");
64+ //console.log("Created shaders and program");
66 gl.attachShader(program, vshader);
66 gl.attachShader(program, vshader);
67 gl.attachShader(program, fshader);
67 gl.attachShader(program, fshader);
@@ -78,7 +78,7 @@ Elm.Native.Graphics.WebGL.make = function(elm) {
79 var guid = Utils.guid();
79 var guid = Utils.guid();
81− console.log("Wrapped buffer #" + guid);
81+ //console.log("Wrapped buffer #" + guid);
83 return buffer = {
83 return buffer = {
84 guid: guid,
84 guid: guid,
@@ -115,7 +115,7 @@ Elm.Native.Graphics.WebGL.make = function(elm) {
115 var array = new Float32Array(data);
115 var array = new Float32Array(data);
117 var buffer = gl.createBuffer();
117 var buffer = gl.createBuffer();
118− console.log("Created attribute buffer " + attribute.name);
118+ //console.log("Created attribute buffer " + attribute.name);
119 gl.bindBuffer(gl.ARRAY_BUFFER, buffer);
119 gl.bindBuffer(gl.ARRAY_BUFFER, buffer);
120 gl.bufferData(gl.ARRAY_BUFFER, array, gl.STATIC_DRAW);
120 gl.bufferData(gl.ARRAY_BUFFER, array, gl.STATIC_DRAW);
@@ -132,7 +132,7 @@ Elm.Native.Graphics.WebGL.make = function(elm) {
133 var numIndices = 3 * List.length(bufferElems);
133 var numIndices = 3 * List.length(bufferElems);
134 var indices = List.toArray(List.range(0, numIndices - 1));
134 var indices = List.toArray(List.range(0, numIndices - 1));
135− console.log("Created index buffer");
135+ //console.log("Created index buffer");
136 var indexBuffer = gl.createBuffer();
136 var indexBuffer = gl.createBuffer();
137 gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, indexBuffer);
137 gl.bindBuffer(gl.ELEMENT_ARRAY_BUFFER, indexBuffer);
138 gl.bufferData(gl.ELEMENT_ARRAY_BUFFER, new Uint16Array(indices), gl.STATIC_DRAW);
138 gl.bufferData(gl.ELEMENT_ARRAY_BUFFER, new Uint16Array(indices), gl.STATIC_DRAW);
@@ -153,7 +153,7 @@ Elm.Native.Graphics.WebGL.make = function(elm) {
154 gl.viewport(0, 0, model.w, model.h);
154 gl.viewport(0, 0, model.w, model.h);
155 gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);
155 gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);
156− console.log("Drawing");
156+ //console.log("Drawing");
158 function drawModel(m) {
158 function drawModel(m) {
@@ -170,6 +170,15 @@ Elm.Native.Graphics.WebGL.make = function(elm) {
170 var uniform = gl.getActiveUniform(program, i);
170 var uniform = gl.getActiveUniform(program, i);
171 var uniformLocation = gl.getUniformLocation(program, uniform.name);
171 var uniformLocation = gl.getUniformLocation(program, uniform.name);
172 switch (uniform.type) {
172 switch (uniform.type) {
174+ gl.uniform1i(uniformLocation, m.uniforms[uniform.name]);
177+ gl.uniform1f(uniformLocation, m.uniforms[uniform.name]);
180+ gl.uniform3fv(uniformLocation, m.uniforms[uniform.name]);
173 case gl.FLOAT_MAT4:
182 case gl.FLOAT_MAT4:
174 gl.uniformMatrix4fv(uniformLocation, false, m.uniforms[uniform.name]);
183 gl.uniformMatrix4fv(uniformLocation, false, m.uniforms[uniform.name]);