-
Notifications
You must be signed in to change notification settings - Fork 4.2k
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
Some menus are blank #71994
Comments
When trying to select an AR-15 The game is running through Portproton (ArchLinux)
UPD. The error is being reproduced. On the version (cdda-windows-tiles-x64-2024-02-26-0341) the game gives a standard error window. |
I think your very first screenshot shows an existing potential "inconsistency" that may be unaffected by the recent imgui addition where the version is placed after any ascii art that may be displayed |
I've confirmed most of these screenshots, What view are you in when you try to "select an AR-15"? |
|
Maybe. In an earlier version (0341), the drawing didn't show up at all. Or I was unlucky. So I'm not sure what the correct way is. |
It is rng-based. That ascii art only shows up sometimes. |
@katemonster33 |
I can reproduce it. Curiously enough, we are drawing spaces on those lines that are missing. |
I haven't figured it out, but I have narrowed it down a bit. In And moving the call to |
Can you print the stack trace? |
I guess it’s just because every window has its own |
Another fix would be to give each scrollbar their own window that is only one column wide. Then it can be drawn any time you want without clearing the whole window. But that’s a more invasive change than just rearranging the order that windows are drawn in. |
I'm coming up with nothing. We may need to simply put the framebuffer back in for now and come up with some solution for letting it work with imgui... maybe invalidate the framebuffer on every redraw when imgui is on screen. was hoping we could just remove that commit temporarily and make a new draft PR with the commit to fix master for now.... waiting on an answer to see if that is possible. |
I guess before removing the framebuffer the spaces in those windows are skipped due to the framebuffer not being invalidated because nothing was printed there, so removing the framebuffer causes all spaces to be drawn regardless of whether the location is invalidated. Maybe instead of clearing the window area before drawing a window, only erase locations in the window that have been printed to? Or perhaps revert the removal and properly invalidate the area used by ImGUI windows, IDK. |
There are available builds for Linux built every day, e.g cdda-linux-tiles. https://github.com/CleverRaven/Cataclysm-DDA/releases |
Here is the result on another windows 10 computer.
If you press I've been paying attention. In my settings: Enabling the UI, does not change the window header errors. |
Linux builds are failing due to a library mismatch https://github.com/CleverRaven/Cataclysm-DDA/actions/runs/8059264719/job/22016044229#step:17:369 |
Additional information. If the game is run through PortProton, the error (with imGui) causes the game to crash. This error (with imGui) occurs before the game error message. For example: #71451 and #71781 Calling the test error message, does not cause an error with imGui. If you get a game error and click ignore error messages, then repeating the error, does not cause an error with imGui. Example (win10):
The problem is that not every window causes an error to appear with imGui. For example, disconnecting a modification from the m4 carbine causes a "loaded a nun or ammo_data() is nullptr" error, but does not cause an imGui error. |
Ok, it is quite evident that there is more than one bug here. We need to split this up into multiple bug reports.
We’ll leave this bug report for the windows that are missing some lines, usually headers, but also sometimes descriptions. |
The problem is not with this error. The problem is that there is an error with imGui before it. |
And #72022 |
At the moment I am inclined to simply look for all places where |
I was thinking about this all day and eventually realized that we could just clear the window line by line, skipping the lines that aren’t PR incoming. |
Many of the windows in the game, especially the ones with scrollbars, create multiple overlapping windows and then draw them in an odd order. This results in overdraw, but that was partly compensated for by the cache that we removed. Now that we clear the whole window in one go, this causes artifacts as we erase text that was already drawn in a different window that overlaps the current one. By erasing only the lines that are touched, we avoid the problem. Fixes CleverRaven#71994.
I now get a blank screen when starting the game that then draws the main menu on any keypress. Is that related to this? |
Can you give us some more details? What OS? Is the ImGui interface turned on? Can you share a screenshot? |
On second thought, a screenshot of a blank screen might not tell us much :) A video might explain it better. Is the main menu displayed normally once you press a key, or does it go away again, or what? |
Possibly, not likely. Open a new issue with all your platform and configuration details please |
#72047 |
* clear window line by line, skipping untouched lines Many of the windows in the game, especially the ones with scrollbars, create multiple overlapping windows and then draw them in an odd order. This results in overdraw, but that was partly compensated for by the cache that we removed. Now that we clear the whole window in one go, this causes artifacts as we erase text that was already drawn in a different window that overlaps the current one. By erasing only the lines that are touched, we avoid the problem. Fixes #71994. * format the code to placate astyle Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
cdda-windows-tiles-x64-2024-03-01-0629. Fixed game crash. (Probably #72074) UPD. |
Describe the bug
After update #65709. @katemonster33
Two versions were compared:
See the screenshots for details
Attach save file
N/A
Steps to reproduce
N/A
Expected behavior
N/A
Screenshots
Versions and configuration
cdda-windows-tiles-x64-2024-02-26-0558
Additional context
If I find anything else, I'll add to the posts.
The text was updated successfully, but these errors were encountered: