ocornut / imgui

Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies
MIT License
58.94k stars 10.06k forks source link

Resize of DX12 Example Causes Problems #7163

Open PaltryProgrammer opened 8 months ago

PaltryProgrammer commented 8 months ago

greetings kind regards please see attached GIF demonstrate subsequent to resize of example selection of GUI elements via mouse pointer becomes incorrect . Risize Causes Problems thank you kindly

Zelif commented 7 months ago

Oddly enough I was getting a similar issue last week with glfw + webGPU trying to track it down was maddening(2 days lost trying to fix it), ended up rebooting and it went away. I've tried running the example and resizing and seems to not be showing this issue. I noticed the viewport fixes itself up if you move it via the title bar, but still would break if resized.

ocornut commented 7 months ago

I cannot repro here.

image

shmadchenko commented 6 months ago

Hello. I apologize in advance, I am not a native speaker, I used Google for translation.

I thought that my observations might be useful in some way. I observed the behavior described above with unmodified examples with vulcan and dx12 backends. The problem was not reproduced with other backends (olg2, ogl3, dx9, dx10, dx11). I checked only with glfw and win32.

The offset disappears after I move the window and appears again when I resize the window again.

At the same time, I did not observe any difference in renderdoc captures before and after resizing the window. Values in "Dead ImGui Metrics/Debugger" window are looks good too.

It seems that this is a problem not on the imgui side, but on the operating system or driver side. I noticed that other dx12 applications behave a little strangely. A black screen was displayed for a while when switching to them in fullscreen mode. I remembered that I had not rebooted my pc for more than a week, while I was experimenting a lot with the vulkan and catching many errors. Perhaps something is stuck on the driver side. After rebooting the system, the problem disappeared and is no longer reproducible.