From 54e66cba3b7691ce4acf7fac947241058faf0fc3 Mon Sep 17 00:00:00 2001 From: Markus Mohrhard Date: Tue, 18 Feb 2014 23:33:38 +0100 Subject: avoid calling glew repeatedly This saves us about 10% of the rendering time. Change-Id: I3ea7f1849500b025830b44c5175d79ad04aff362 --- chart2/source/view/main/OpenGLRender.cxx | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'chart2') diff --git a/chart2/source/view/main/OpenGLRender.cxx b/chart2/source/view/main/OpenGLRender.cxx index 83d68bd57414..9b4cd8d6fe85 100755 --- a/chart2/source/view/main/OpenGLRender.cxx +++ b/chart2/source/view/main/OpenGLRender.cxx @@ -84,6 +84,7 @@ int static checkGLError(const char *file, int line) return retCode; } +static bool bGlewInit = false; #define CHECK_GL_ERROR() checkGLError(__FILE__, __LINE__) @@ -235,11 +236,16 @@ GLfloat texCoords[] = { int OpenGLRender::InitOpenGL(GLWindow aWindow) { glWin = aWindow; - glewExperimental = GL_TRUE; - if (glewInit() != GLEW_OK) + if(!bGlewInit) { - SAL_WARN("chart2.opengl", "Failed to initialize GLEW"); - return -1; + glewExperimental = GL_TRUE; + if (glewInit() != GLEW_OK) + { + SAL_WARN("chart2.opengl", "Failed to initialize GLEW"); + return -1; + } + else + bGlewInit = true; } // These guys don't just check support but setup the vtables. -- cgit