AnsweredAssumed Answered

problem with eglMakeCurrent, color artifacts on display

Question asked by Vyacheslav Sorokaletov on Dec 19, 2012
Latest reply on Jan 18, 2013 by Andre Silva
Branched to a new discussion

Hi guys,

 

I have some problems with using the eglMakeCurrent.

There is the embeded device which is based on the IMX6x and uses the QNX as OS and OpengGLES2.0&EGL1.4.

 

I'm trying to use opengl in the multi-thread application, so I have multiple threads that render to the same surface/context.

 

Each thread at the beginning of its work with EGL context calls the eglMakeCurrent function and passing the eglContext, eglSurface (for both read/write)

and at the end of work it calls the eglMakeCurrent( mEglDisplay, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT ).

 

In this way I have a context that is active  only for one thread.

But as a result I have a lot of color artifacts on the screen.

For experiment I've created a single-threaded application and simple make few context switches:

 

eglMakeCurrent( mEglDisplay, mEglSurface, mEglSurface, mEglContext )

--

some opengl operations

--

eglMakeCurrent( mEglDisplay, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT )

eglMakeCurrent( mEglDisplay, mEglSurface, mEglSurface, mEglContext )

--

some opengl operations

--

 

eglMakeCurrent( mEglDisplay, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT )

 

As result I got similar problem - a lot of color artifacts on the screen.

Has anyone faced a similar problem? Can somebody help me?

 

Thanks in advance, Vyacheslav.

 

 

 

Outcomes