X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;ds=sidebyside;f=source%2Fprogramdata.cpp;h=5bfbd68fe25ece5ef5a016cf61de253b6c31c790;hb=9d2291e3f3c007b1aa7fe66d882a8c1fce8fdee6;hp=43767bf9526a4449cde0a6d5d3f076bba0460b4b;hpb=f9c15dc04462b2f1eea1d6bdd71e3ba967b1bd8c;p=libs%2Fgl.git diff --git a/source/programdata.cpp b/source/programdata.cpp index 43767bf9..5bfbd68f 100644 --- a/source/programdata.cpp +++ b/source/programdata.cpp @@ -120,6 +120,31 @@ void ProgramData::uniform_matrix4(const string &name, const Matrix &m) uniform_matrix4(name, v); } +void ProgramData::uniform1_array(const string &name, unsigned n, const float *v) +{ + uniform(name, new UniformArray(n, v)); +} + +void ProgramData::uniform2_array(const string &name, unsigned n, const float *v) +{ + uniform(name, new UniformArray(n, v)); +} + +void ProgramData::uniform3_array(const string &name, unsigned n, const float *v) +{ + uniform(name, new UniformArray(n, v)); +} + +void ProgramData::uniform4_array(const string &name, unsigned n, const float *v) +{ + uniform(name, new UniformArray(n, v)); +} + +void ProgramData::uniform_matrix4_array(const string &name, unsigned n, const float *v) +{ + uniform(name, new UniformArray(n, v)); +} + const UniformBlock &ProgramData::get_block(const Program &prog) const { if(modified) @@ -145,7 +170,7 @@ const UniformBlock &ProgramData::get_block(const Program &prog) const { int loc = prog.get_uniform_location(j->first); if(loc>=0) - block.uniform(loc, *j->second); + block.attach(loc, *j->second); } i->second.dirty = false; }