X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=demos%2Fcubemap.cpp;h=2a0bc02c6d1ffe83313837e7ff1778c78a160854;hp=98d0ba245f0ab8bab0c6d4a7cd35a7f603bc8280;hb=ca52c492bd4f2fa1a1db3a85e50eaf7c43474830;hpb=0c731643d6363eb4c492e836ffb919cb7c0a3035 diff --git a/demos/cubemap.cpp b/demos/cubemap.cpp index 98d0ba24..2a0bc02c 100644 --- a/demos/cubemap.cpp +++ b/demos/cubemap.cpp @@ -84,7 +84,7 @@ int main() material.set_specular(GL::Color(1.0)); material.set_shininess(100); - GL::Program::StandardFeatures features; + GL::ProgramBuilder::StandardFeatures features; features.lighting = true; features.specular = true; features.material = true; @@ -93,6 +93,8 @@ int main() GL::ProgramData shdata; shdata.uniform("environment", 0); shdata.uniform("reflectivity", 0.5f); + float env_mat[9] = { 1, 0, 0, 0, 1, 0, 0, 0, 1 }; + shdata.uniform_matrix3("env_eye_matrix", env_mat); GL::MatrixStack::projection() = GL::Matrix::frustum_centered(0.15, 0.1, 0.1, 10); @@ -114,19 +116,19 @@ int main() renderer.set_material(&material); renderer.set_shader_program(&shprog, &shdata); renderer.set_texture(&texture); - renderer.matrix_stack() *= GL::Matrix::translation(0, 0, -7); + renderer.transform(GL::Matrix::translation(0, 0, -7)); { GL::Renderer::Push _push(renderer); - renderer.matrix_stack() *= GL::Matrix::translation(-2, 0, 0); - renderer.matrix_stack() *= GL::Matrix::rotation(angle/2.3, 0, 1, 0); - renderer.matrix_stack() *= GL::Matrix::rotation(angle, 1, 0.25, 0); + renderer.transform(GL::Matrix::translation(-2, 0, 0)); + renderer.transform(GL::Matrix::rotation(angle/2.3, 0, 1, 0)); + renderer.transform(GL::Matrix::rotation(angle, 1, 0.25, 0)); box.draw(renderer); } { GL::Renderer::Push _push(renderer); - renderer.matrix_stack() *= GL::Matrix::translation(2, 0, 0); - renderer.matrix_stack() *= GL::Matrix::rotation(-angle/2.3, 0, 1, 0); - renderer.matrix_stack() *= GL::Matrix::rotation(angle, 1, 0.25, 0); + renderer.transform(GL::Matrix::translation(2, 0, 0)); + renderer.transform(GL::Matrix::rotation(-angle/2.3, 0, 1, 0)); + renderer.transform(GL::Matrix::rotation(angle, 1, 0.25, 0)); cylinder.draw(renderer); } }