mesa: Add gl_shader_program::AttributeBindings
This currently mirrors the state tracking gl_shader_program::Attributes, but I'm working towards eliminating that. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
@@ -32,6 +32,7 @@
|
||||
#include "glsl_symbol_table.h"
|
||||
#include "ir.h"
|
||||
#include "shaderobj.h"
|
||||
#include "program/hash_table.h"
|
||||
|
||||
extern "C" {
|
||||
#include "shaderapi.h"
|
||||
@@ -67,6 +68,10 @@ _mesa_BindAttribLocationARB(GLhandleARB program, GLuint index,
|
||||
}
|
||||
|
||||
/* this will replace the current value if it's already in the list */
|
||||
/* Add VERT_ATTRIB_GENERIC0 because that's how the linker differentiates
|
||||
* between built-in attributes and user-defined attributes.
|
||||
*/
|
||||
shProg->AttributeBindings->put(index + VERT_ATTRIB_GENERIC0, name);
|
||||
i = _mesa_add_attribute(shProg->Attributes, name, size, datatype, index);
|
||||
if (i < 0) {
|
||||
_mesa_error(ctx, GL_OUT_OF_MEMORY, "glBindAttribLocation");
|
||||
|
Reference in New Issue
Block a user