Automatically generate uniform and attribute locations

This commit is contained in:
Tom Payne
2013-04-08 15:49:33 +02:00
parent c6cd3e0227
commit aa5ce41cb5
3 changed files with 94 additions and 0 deletions

View File

@@ -104,3 +104,28 @@ goog.addSingletonGetter({{className}}Vertex);
{{namespace}}.attribute.{{originalName}} =
goog.DEBUG ? '{{originalName}}' : '{{shortName}}';
{{/getAttributes}}
/**
* @constructor
* @param {WebGLRenderingContext} gl GL.
* @param {WebGLProgram} program Program.
*/
{{namespace}}.Locations = function(gl, program) {
{{#getUniforms}}
/**
* @type {WebGLUniformLocation}
*/
this.{{originalName}} = gl.getUniformLocation(program,
{{namespace}}.uniform.{{originalName}});
{{/getUniforms}}
{{#getAttributes}}
/**
* @type {number}
*/
this.{{originalName}} = gl.getAttribLocation(program,
{{namespace}}.attribute.{{originalName}});
{{/getAttributes}}
};