feat.material = i/4>0;
feat.texture = i/4>1;
feat.lighting = i%4>0;
- feat.normalmap = i%4>1;
+ feat.normal_map = i%4>1;
feat.specular = i%4>2;
programs.push_back(new GL::Program(feat));
}
GL::Lighting lighting;
GL::Light light;
- light.set_position(GL::Vector4(0, 2, 3, 0));
+ light.set_position(GL::Vector4(0, -0.781, 0.625, 0));
lighting.attach(0, light);
- GL::Bind bind_light(lighting);
-
GL::Texturing texturing;
texturing.attach(0, tex1);
texturing.attach(1, tex2);
{
GL::Bind bind_depth(GL::DepthTest::lequal());
GL::Renderer renderer(0);
+ renderer.set_lighting(&lighting);
renderer.set_material(&mat);
renderer.set_texturing(&texturing);
renderer.add_shader_data(progdata);
for(unsigned i=0; i<12; ++i)
{
- GL::MatrixStack::Push push(renderer.matrix_stack());
+ GL::Renderer::Push push(renderer);
renderer.set_shader_program(programs[i]);
- 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);
+ renderer.transform(GL::Matrix::translation(-3.3+(i%4)*2.2, 0, -3.5+(i/4)*3.0));
+ renderer.transform(GL::Matrix::rotation(angle, 0, 0, 1));
mesh.draw(renderer);
}
}