@@ -63,7 +63,7 @@ public: | |||||
glView.clear(); | glView.clear(); | ||||
} | } | ||||
void initialiseOnRenderThread() {} | |||||
void initialiseOnRenderThread (OpenGLContext&) {} | |||||
void shutdownOnRenderThread() {} | void shutdownOnRenderThread() {} | ||||
bool makeActive() const noexcept { return isInsideGLCallback; } | bool makeActive() const noexcept { return isInsideGLCallback; } | ||||
@@ -97,7 +97,7 @@ public: | |||||
[view release]; | [view release]; | ||||
} | } | ||||
void initialiseOnRenderThread() {} | |||||
void initialiseOnRenderThread (OpenGLContext&) {} | |||||
void shutdownOnRenderThread() | void shutdownOnRenderThread() | ||||
{ | { | ||||
@@ -103,11 +103,11 @@ public: | |||||
XFree (bestVisual); | XFree (bestVisual); | ||||
} | } | ||||
void initialiseOnRenderThread() | |||||
void initialiseOnRenderThread (OpenGLContext& context) | |||||
{ | { | ||||
ScopedXLock xlock; | ScopedXLock xlock; | ||||
renderContext = glXCreateContext (display, bestVisual, (GLXContext) contextToShareWith, GL_TRUE); | renderContext = glXCreateContext (display, bestVisual, (GLXContext) contextToShareWith, GL_TRUE); | ||||
makeActive(); | |||||
context.makeActive(); | |||||
} | } | ||||
void shutdownOnRenderThread() | void shutdownOnRenderThread() | ||||
@@ -81,7 +81,7 @@ public: | |||||
renderContext = nil; | renderContext = nil; | ||||
} | } | ||||
void initialiseOnRenderThread() {} | |||||
void initialiseOnRenderThread (OpenGLContext&) {} | |||||
void shutdownOnRenderThread() { deactivateCurrentContext(); } | void shutdownOnRenderThread() { deactivateCurrentContext(); } | ||||
bool createdOk() const noexcept { return getRawContext() != nullptr; } | bool createdOk() const noexcept { return getRawContext() != nullptr; } | ||||
@@ -81,7 +81,7 @@ public: | |||||
releaseDC(); | releaseDC(); | ||||
} | } | ||||
void initialiseOnRenderThread() {} | |||||
void initialiseOnRenderThread (OpenGLContext&) {} | |||||
void shutdownOnRenderThread() { deactivateCurrentContext(); } | void shutdownOnRenderThread() { deactivateCurrentContext(); } | ||||
static void deactivateCurrentContext() { wglMakeCurrent (0, 0); } | static void deactivateCurrentContext() { wglMakeCurrent (0, 0); } | ||||
@@ -324,7 +324,8 @@ public: | |||||
jassert (! cachedImageFrameBuffer.isValid()); | jassert (! cachedImageFrameBuffer.isValid()); | ||||
context.makeActive(); | context.makeActive(); | ||||
nativeContext->initialiseOnRenderThread(); | |||||
nativeContext->initialiseOnRenderThread (context); | |||||
glViewport (0, 0, component.getWidth(), component.getHeight()); | glViewport (0, 0, component.getWidth(), component.getHeight()); | ||||
context.extensions.initialise(); | context.extensions.initialise(); | ||||
@@ -1118,21 +1118,6 @@ public: | |||||
target.makeActive(); | target.makeActive(); | ||||
blendMode.resync(); | blendMode.resync(); | ||||
JUCE_CHECK_OPENGL_ERROR | JUCE_CHECK_OPENGL_ERROR | ||||
#ifdef GL_COLOR_ARRAY | |||||
glDisableClientState (GL_COLOR_ARRAY); | |||||
glDisableClientState (GL_NORMAL_ARRAY); | |||||
glDisableClientState (GL_VERTEX_ARRAY); | |||||
glDisableClientState (GL_INDEX_ARRAY); | |||||
for (int i = 3; --i >= 0;) | |||||
{ | |||||
activeTextures.setActiveTexture (i); | |||||
glDisableClientState (GL_TEXTURE_COORD_ARRAY); | |||||
} | |||||
#endif | |||||
JUCE_CHECK_OPENGL_ERROR | |||||
activeTextures.clear(); | activeTextures.clear(); | ||||
shaderQuadQueue.initialise(); | shaderQuadQueue.initialise(); | ||||
JUCE_CHECK_OPENGL_ERROR | JUCE_CHECK_OPENGL_ERROR | ||||
@@ -1142,11 +1127,6 @@ public: | |||||
{ | { | ||||
flush(); | flush(); | ||||
target.context.extensions.glBindFramebuffer (GL_FRAMEBUFFER, previousFrameBufferTarget); | target.context.extensions.glBindFramebuffer (GL_FRAMEBUFFER, previousFrameBufferTarget); | ||||
#if defined (GL_INDEX_ARRAY) | |||||
glDisableClientState (GL_INDEX_ARRAY); | |||||
#endif | |||||
target.context.extensions.glBindBuffer (GL_ARRAY_BUFFER, 0); | target.context.extensions.glBindBuffer (GL_ARRAY_BUFFER, 0); | ||||
target.context.extensions.glBindBuffer (GL_ELEMENT_ARRAY_BUFFER, 0); | target.context.extensions.glBindBuffer (GL_ELEMENT_ARRAY_BUFFER, 0); | ||||
} | } | ||||