|
From: Tapio V. <aa...@us...> - 2010-11-03 00:01:35
|
Module: performous
Branch: opengl2
Commit: 72038dadd389cdeab206476e2c39ea1bc5e39470
Author: Tapio Vierros <tap...@gm...>
Date: Wed Nov 3 01:53:27 2010 +0200
UseShader now figures the old program by itself.
---
game/glshader.hh | 7 ++++---
game/guitargraph.cc | 2 +-
2 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/game/glshader.hh b/game/glshader.hh
index d834936..4705117 100644
--- a/game/glshader.hh
+++ b/game/glshader.hh
@@ -26,12 +26,13 @@ struct Shader: public boost::noncopyable {
/** Temporarily switch shader in a RAII manner. */
struct UseShader {
- UseShader(Shader& new_shader, Shader& old_shader): m_old(old_shader) {
+ UseShader(Shader& new_shader) {
+ glGetIntegerv(GL_CURRENT_PROGRAM, &m_old);
new_shader.bind();
}
- ~UseShader() { m_old.bind(); }
+ ~UseShader() { glUseProgram(m_old); }
private:
- Shader& m_old;
+ GLint m_old;
};
diff --git a/game/guitargraph.cc b/game/guitargraph.cc
index 099c8e3..5420862 100644
--- a/game/guitargraph.cc
+++ b/game/guitargraph.cc
@@ -855,7 +855,7 @@ void GuitarGraph::draw(double time) {
}
// Draw the notes
- { UseShader objectShader(*Object3d::shader, *Window::shader);
+ { UseShader objectShader(*Object3d::shader);
glutil::UseDepthTest depthtest;
// Draw drum fills / Big Rock Endings
bool drumfill = m_dfIt != m_drumfills.end() && m_dfIt->begin - time <= future;
|