The use-case if the following:
- We create a thread which renders an image using OpenGL. There are no visible artifacts during window resizing.
- We switch the rendering mode, OpenGL thread is completely deleted and render with Win GDI.
- We switch back to OpenGL rendering, creating a new thread and a new OpenGL context.
- We resize window, and artifacts appear. The client area moves out of the correct limits though HWND, passed to OpenGL renderer still has correct client area coordinates.
There is no actual OpenGL rendering simultaneously from several threads.
After first OpenGL rendering:
After second OpenGL rendering:
There is no such a problem under Windows XP.
Does anyone has any idea what this could be linked with?