@Override public int glGetUniformLocation (int program, String name) { WebGLUniformLocation location = gl.getUniformLocation(programs.get(program), name); if (location == null) return -1; IntMap<WebGLUniformLocation> progUniforms = uniforms.get(program); if (progUniforms == null) { progUniforms = IntMap.create(); uniforms.put(program, progUniforms); } // FIXME check if uniform already stored. int id = progUniforms.add(location); return id; }
@Override public int glGetUniformLocation (int program, String name) { WebGLUniformLocation location = gl.getUniformLocation(programs.get(program), name); if (location == null) return -1; IntMap<WebGLUniformLocation> progUniforms = uniforms.get(program); if (progUniforms == null) { progUniforms = IntMap.create(); uniforms.put(program, progUniforms); } // FIXME check if uniform already stored. int id = progUniforms.add(location); return id; }
@Override public int glGetUniformLocation (int program, String name) { WebGLUniformLocation location = gl.getUniformLocation(programs.get(program), name); return allocateUniformLocationId(program, location); }
@Override public int glGetUniformLocation(int program, String name) { return createObject(gl.getUniformLocation(getProgram(program), name), WebGLObjectType.UNIFORM_LOCATION); }
@Override public int glGetUniformLocation(int program, String name) { WebGLUniformLocation location = gl.getUniformLocation(programs.get(program), name); IntMap<WebGLUniformLocation> progUniforms = uniforms.get(program); if (progUniforms == null) { progUniforms = IntMap.<WebGLUniformLocation>create(); uniforms.put(program, progUniforms); } // FIXME check if uniform already stored. int id = progUniforms.add(location); return id; }
@Override public int glGetUniformLocation(int program, String name) { WebGLUniformLocation location = gl.getUniformLocation(programs.get(program), name); IntMap<WebGLUniformLocation> progUniforms = uniforms.get(program); if (progUniforms == null) { progUniforms = IntMap.<WebGLUniformLocation>create(); uniforms.put(program, progUniforms); } // FIXME check if uniform already stored. int id = progUniforms.add(location); return id; }
@Override public int glGetUniformLocation (int program, String name) { WebGLUniformLocation location = gl.getUniformLocation(programs.get(program), name); if (location == null) return -1; IntMap<WebGLUniformLocation> progUniforms = uniforms.get(program); if (progUniforms == null) { progUniforms = IntMap.create(); uniforms.put(program, progUniforms); } // FIXME check if uniform already stored. int id = progUniforms.add(location); return id; }
private void drawQuad() { // Use the sole shader program. gl.useProgram(shaderProgram); // Projection matrix. WebGLUniformLocation pUniform = gl.getUniformLocation(shaderProgram, "projectionMatrix"); gl.uniformMatrix4fv(pUniform, false, projectionMatrix); // Model View matrix. WebGLUniformLocation mvUniform = gl.getUniformLocation(shaderProgram, "modelViewMatrix"); gl.uniformMatrix4fv(mvUniform, false, modelViewMatrix); // Bird texture. gl.activeTexture(TEXTURE0); gl.uniform1i(gl.getUniformLocation(shaderProgram, "texture"), 0); // Vertices (position, texCoord) gl.bindBuffer(ARRAY_BUFFER, buffer); int vertexPositionAttribute = gl.getAttribLocation(shaderProgram, "vertexPosition"); gl.vertexAttribPointer(vertexPositionAttribute, 3, FLOAT, false, 0, 0); gl.enableVertexAttribArray(vertexPositionAttribute); int texCoordAttribute = gl.getAttribLocation(shaderProgram, "texCoord"); gl.vertexAttribPointer(texCoordAttribute, 2, FLOAT, false, 0, 12 * Float32Array.BYTES_PER_ELEMENT); gl.enableVertexAttribArray(texCoordAttribute); // Elements. gl.bindBuffer(ELEMENT_ARRAY_BUFFER, indexBuffer); gl.drawArrays(TRIANGLE_STRIP, 0, 4); }
private void drawQuad() { // Use the sole shader program. gl.useProgram(shaderProgram); // Projection matrix. WebGLUniformLocation pUniform = gl.getUniformLocation(shaderProgram, "projectionMatrix"); gl.uniformMatrix4fv(pUniform, false, projectionMatrix); // Model View matrix. WebGLUniformLocation mvUniform = gl.getUniformLocation(shaderProgram, "modelViewMatrix"); gl.uniformMatrix4fv(mvUniform, false, modelViewMatrix); // Bird texture. gl.activeTexture(TEXTURE0); gl.uniform1i(gl.getUniformLocation(shaderProgram, "texture"), 0); // Vertices (position, texCoord) gl.bindBuffer(ARRAY_BUFFER, buffer); int vertexPositionAttribute = gl.getAttribLocation(shaderProgram, "vertexPosition"); gl.vertexAttribPointer(vertexPositionAttribute, 3, FLOAT, false, 0, 0); gl.enableVertexAttribArray(vertexPositionAttribute); int texCoordAttribute = gl.getAttribLocation(shaderProgram, "texCoord"); gl.vertexAttribPointer(texCoordAttribute, 2, FLOAT, false, 0, 12 * Float32Array.BYTES_PER_ELEMENT); gl.enableVertexAttribArray(texCoordAttribute); // Elements. gl.bindBuffer(ELEMENT_ARRAY_BUFFER, indexBuffer); gl.drawArrays(TRIANGLE_STRIP, 0, 4); }
private void drawQuad() { // Use the sole shader program. gl.useProgram(shaderProgram); // Projection matrix. WebGLUniformLocation pUniform = gl.getUniformLocation(shaderProgram, "projectionMatrix"); gl.uniformMatrix4fv(pUniform, false, projectionMatrix); // Model View matrix. WebGLUniformLocation mvUniform = gl.getUniformLocation(shaderProgram, "modelViewMatrix"); gl.uniformMatrix4fv(mvUniform, false, modelViewMatrix); // Bird texture. gl.activeTexture(TEXTURE0); gl.uniform1i(gl.getUniformLocation(shaderProgram, "texture"), 0); // Vertices (position, texCoord) gl.bindBuffer(ARRAY_BUFFER, buffer); int vertexPositionAttribute = gl.getAttribLocation(shaderProgram, "vertexPosition"); gl.vertexAttribPointer(vertexPositionAttribute, 3, FLOAT, false, 0, 0); gl.enableVertexAttribArray(vertexPositionAttribute); int texCoordAttribute = gl.getAttribLocation(shaderProgram, "texCoord"); gl.vertexAttribPointer(texCoordAttribute, 2, FLOAT, false, 0, 12 * Float32Array.BYTES_PER_ELEMENT); gl.enableVertexAttribArray(texCoordAttribute); // Elements. gl.bindBuffer(ELEMENT_ARRAY_BUFFER, indexBuffer); gl.drawArrays(TRIANGLE_STRIP, 0, 4); }