diff options
author | Alon Zakai <alonzakai@gmail.com> | 2013-03-31 14:05:56 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2013-03-31 14:17:29 -0700 |
commit | f1416eb63e0a127aace21108333511d408adf415 (patch) | |
tree | 6b021ee16f0229434c4f99e89ba2e5a232581535 /src | |
parent | 0ab1802b4d10ba893a9b3c82b92805fad7590dc6 (diff) |
invalidate renderers using stride
Diffstat (limited to 'src')
-rw-r--r-- | src/library_gl.js | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/library_gl.js b/src/library_gl.js index 1d37ca91..0912b5da 100644 --- a/src/library_gl.js +++ b/src/library_gl.js @@ -1801,6 +1801,7 @@ var LibraryGL = { lastRenderer: null, // used to avoid cleaning up and re-preparing the same renderer lastArrayBuffer: null, // used in conjunction with lastRenderer lastProgram: null, // "" + lastStride: -1, // "" // The following data structures are used for OpenGL Immediate Mode matrix routines. matrix: {}, @@ -2071,6 +2072,7 @@ var LibraryGL = { var canSkip = this == lastRenderer && arrayBuffer == GL.immediate.lastArrayBuffer && (GL.currProgram || this.program) == GL.immediate.lastProgram && + GL.immediate.stride == GL.immediate.lastStride && !GL.immediate.matricesModified; if (!canSkip && lastRenderer) lastRenderer.cleanup(); #endif @@ -2091,6 +2093,7 @@ var LibraryGL = { GL.immediate.lastRenderer = this; GL.immediate.lastArrayBuffer = arrayBuffer; GL.immediate.lastProgram = GL.currProgram || this.program; + GL.immediate.lastStride == GL.immediate.stride; GL.immediate.matricesModified = false; #endif |