-
-
Notifications
You must be signed in to change notification settings - Fork 10.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Glitches in OpenGL/DX renderers on Intel GPU #3033
Comments
My feeling is that it may be an issue with OpenGL drivers. |
Thanks very much for quick reply |
Maybe it is a hardware issue? |
You can open Tools>Metrics and look at the polygon count, try to record a video and see if the polygon count changed when the glitch happen. |
Thank you very much |
Are you using an Intel GPU? I've noticed the same on my laptop. |
Yes, I'm using an Intel GPU(UHD Graphics 630) |
If it helps narrow down this issue I'd also like to mention that the same thing happens on my laptop with Intel UHD Graphics 620 when using OpenGl 3. Seems consistent with both of you guys. |
OK so this looks very real, and even more surprising if it happens with multiple graphics API. I don’t think I myself have the knowledge to begin to guess what we might be doing wrong. If you have issue on your machine, could you try running variety of examples and see where the bug happens for you (do you have it with dx9/dx11/dx12/vulkan as well?). |
I noticed that those glitches tend to be at least partially dependant on the mouse cursor. When I move it fast over many controls glitches start to statistically mimic movement of the cursor. Do you use some custom cursor rendering, or do you change it through OS events? |
Ok, I don't know if this is coincidance, but in my case they have color of the text. |
There's no bug of that sort in the ImDrawList functions, it's entirely a bug between the backend code and the driver. |
Then how do you explain the color behaviors? They are definitely not random. |
Are those draw lists cleared to zeros every frame, or you simply set current buffer size to 0? |
It's probably using data from Frame N+1 on Frame N or vice-versa, it makes sense.
The later, we don't superfluously clear data we don't need to clear. It wouldn't be a correct solution to clear them either way. PS: This is not an IRC channel, please avoid spamming either threads with oneliner questions. This needs thoughtful research. Each of your message here are e-mailed to ~1000 people. |
Keeping buffer from the previous frame and setting its size to 0 at the beginning of the new frame is of course a good idea. |
I've been having this exact issue as well. I've gone down quite a rabbit hole in trying to figure it out, and I have managed to impact this but never eliminate it. What I've tried and the results below:
One thing I've definitely noticed is that it occurs more frequently when there are large amounts of filled rectangles on the screen. For example, I have a window with a lot of drop downs and it was barely happening. I changed those drop downs to use the collapsible header style, and the issue became much more frequent. |
I'm experiencing simillar problems with windows11/Opengl3/Intel graphics card, here's what I did:
The imgui window will flicker from time to time, even disappear completely some time. BTW, I'm using version 1.86. |
Windows users with Intel GPUs are experiencing random rendering artifacts (ocornut/imgui#3033). Option is only available for Direct3D on Windows and OpenGL on macOS. On Linux the only way to force a software renderer is by setting the LIBGL_ALWAYS_SOFTWARE environment variable, which Mesa reads from glxInitialize/eglInitialize which are per-display not per-window, so dynamically overriding that per context is not possible.
(you may also go to Demo>About Window, and click "Config/Build Information" to obtain a bunch of detailed information that you can paste here)
Version/Branch of Dear ImGui:
Compiler: msvc1924(vs2019) / msvc1600(vs2010)
Operating System: windows 7 64bit / windows 10 Pro 64bit (1909, OS Build:18363.657)
My Issue/Question:
what an awesome project. Thank you for your hard work!
I did download source code and build examples using vs2019( and vs2010)
(I had never change source code.)
and ran an example program.
(I did a test on windows 7 64bit and Windows 10 64bit with vs2010 and vs2019)
Please watch the below screenshots and gif animation carefully.
Irregularly something(small line?) blink slightly
I wonder why does this happen.
Screenshots/Video
The text was updated successfully, but these errors were encountered: