aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/library_gl.js9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/library_gl.js b/src/library_gl.js
index 20c7d85e..3e022539 100644
--- a/src/library_gl.js
+++ b/src/library_gl.js
@@ -2112,8 +2112,9 @@ var LibraryGL = {
if (GL.currProgram != program) {
GL.immediate.currentRenderer = null; // This changes the FFP emulation shader program, need to recompute that.
GL.currProgram = program;
+ GL.immediate.fixedFunctionProgram = 0;
+ glUseProgram(program);
}
- glUseProgram(program);
}
var glDeleteProgram = _glDeleteProgram;
@@ -3745,8 +3746,10 @@ var LibraryGL = {
#endif
if (!GL.currProgram) {
- Module.ctx.useProgram(this.program);
- GL.immediate.fixedFunctionProgram = this.program;
+ if (GL.immediate.fixedFunctionProgram != this.program) {
+ Module.ctx.useProgram(this.program);
+ GL.immediate.fixedFunctionProgram = this.program;
+ }
}
if (this.modelViewLocation && this.modelViewMatrixVersion != GL.immediate.matrixVersion[0/*m*/]) {