OpenGL weirdness
I believe this has something to do with running out of GPU memory when initializing OpenGL. The problem occurs when many (15) full-screen windows are created all rendering with OpenGL. There seem to be 2 main problems: 1) If the window is dividing multiple monitors, it wraps around. In other words, if the right side of the window should be rendering on the right monitor, it actually renders on the left side of the left monitor. The window border renders correctly on the rightmost monitor, but the OpenGL view is wrapped to the left and offset down by exactly 1 pixel. 2) The other problem is that z-order is bugged. The OpenGL window will render on top of any other window when it renders. This leads to an infinite loop of rendering as the lower z-order window causes the higher one to paint again and vice-versa.
What really troubles me is that OpenGL does not return any errors. I would like to fix the problem. But even if that is not possible, it would be nice to detect and workaround the issues. I am fairly new to OpenGL programming spending most of my time with the evil DirectX :)
To present the screen, I am using glFlush() followed by SwapBuffers(). It wouldn't be a problem with that, would it?
I am using glGetError all over the place to no avail. Please let me know if there is any other type of error checking that may handle this or if there is any rhyme or reason as to what could cause this.
Thanks a lot and happy coding.
I doubt that any type of error checking is going to help you. You are just getting some odd system behavior. It depends on your OS and the video drivers.
Why do you have 15 fullscreen windows?
Calling glFlush is unnecessary because SwapBuffers does the flush.
Why do you have 15 fullscreen windows?
Calling glFlush is unnecessary because SwapBuffers does the flush.
Yeah, this definitely sounds like a problem with your operating system/video drivers/window creation libraries, and their incompatability when working with so many windows, especially on two monitors, and having some windows span more than 1 monitor.
They were just never made for that kind of use, so no wonder you're seeing buggy behaviour.
You didn't mention the most important info: what OS are you using? How many monitors do you have, what resolutions are they running and what kind of multiple monitor video mode are you using? Also, what video card?
Not that it'll help, but I think that's most likely the real culprit and I doubt you can do much about it (at least, not in any sort of educated way).
They were just never made for that kind of use, so no wonder you're seeing buggy behaviour.
You didn't mention the most important info: what OS are you using? How many monitors do you have, what resolutions are they running and what kind of multiple monitor video mode are you using? Also, what video card?
Not that it'll help, but I think that's most likely the real culprit and I doubt you can do much about it (at least, not in any sort of educated way).
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement