- cube_material.set_shininess(150);
-
- cube_transform.source(cube_transform_src);
- cube_transform.compile();
-
- // First create a simplified shader for rendering the shadow map
- GL::ProgramBuilder::StandardFeatures features;
- features.transform = true;
- GL::ProgramBuilder(features).add_shaders(cube_shadow_shprog);
- cube_shadow_shprog.attach_shader(cube_transform);
- cube_shadow_shprog.bind_attribute(7, "sphere_coord");
- cube_shadow_shprog.link();
-
- // Then add the rest of the features for normal rendering
- features.lighting = true;
- features.specular = true;
- features.material = true;
- features.shadow = true;
- features.reflection = true;
- GL::ProgramBuilder(features).add_shaders(cube_shprog);
- cube_shprog.attach_shader(cube_transform);
- cube_shprog.bind_attribute(7, "sphere_coord");
- cube_shprog.link();