X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=demos%2Fshaders.cpp;h=ae5c98fbb727cd42e4259a44d446148dc9b56d47;hp=b7f2a1961cabdc8707fd71a5ef46914d787d9126;hb=9846a5c6e73b3a146084894a11550dbbf184a22a;hpb=cc5e2fb2a0fbb48a9780c9a7c363d1712e459740 diff --git a/demos/shaders.cpp b/demos/shaders.cpp index b7f2a196..ae5c98fb 100644 --- a/demos/shaders.cpp +++ b/demos/shaders.cpp @@ -65,7 +65,6 @@ int main() mat.set_specular(GL::Color(0.45, 0.5, 0.4)); mat.set_shininess(50); vector programs; - vector progdata; for(unsigned i=0; i<12; ++i) { GL::Program::StandardFeatures feat; @@ -80,13 +79,12 @@ int main() programs.back()->bind_attribute(4, "tangent"); programs.back()->bind_attribute(5, "binormal"); programs.back()->link(); - progdata.push_back(new GL::ProgramData(*programs.back())); - progdata.back()->uniform("normalmap", 1); } - else - progdata.push_back(0); } + GL::ProgramData progdata; + progdata.uniform("normalmap", 1); + GL::Lighting lighting; GL::Light light; light.set_position(GL::Vector4(0, 2, 3, 0)); @@ -117,7 +115,7 @@ int main() for(unsigned i=0; i<12; ++i) { GL::MatrixStack::Push push(renderer.matrix_stack()); - renderer.set_shader(programs[i], progdata[i]); + renderer.set_shader(programs[i], &progdata); renderer.matrix_stack() *= GL::Matrix::translation(-3.3+(i%4)*2.2, 0, -3.5+(i/4)*3.0); renderer.matrix_stack() *= GL::Matrix::rotation(angle, 0, 0, 1); mesh.draw(renderer);