YoYoGames / GameMaker-Bugs

Public tracking for GameMaker bugs
26 stars 8 forks source link

UI/UX: [Win IDE] Tiny black bar flickers at bottom of the GM window since 2024.4 #6108

Closed ParodyKnaveBob closed 1 month ago

ParodyKnaveBob commented 5 months ago

Description

I haven't seen this until Monthly 2024.4.1.201, but I never used the first 2024.4.x release despite installing it. (I've been overcoming a laptop dying last month.) If you need more than a description, I'll make my next goal to be able to record a screen again.

As I move my mouse cursor around on the screen -- and sometimes not -- a tiny black bar appears at the bottom of the IDE, squashing everything above it upward slightly. It disappears quite soon, restretching everything back downward slightly. Sometimes it's a few seconds between this toggling, sometimes it toggles a couple times per second. It seems mostly triggered by mousing over UI elements like buttons, scrollbars, window edges, etc., but it's inconsistent; it also seems the flashing text cursor can cause it.

The very subtle up-and-down squashing-releasing on repeat seems to be giving me actual motion sickness, which I can't say I expected. Hilarious to me, except I realistically probably shouldn't use it after I send this report...

I managed to take a screenshot at each position. I had to override Windows 11's PrtScn override because its screen capture app didn't want to ever capture the black bar. Also, I highly doubt my all-but-default-blank project has anything to do with this, but I attached it, too, just in case it indirectly gives you insight.

Steps To Reproduce

  1. Start GameMaker.

(lol)

  1. But seriously, just open a new blank project or open a recent project or whatever. I'm clearly having a strange problem unique(?) to my machine. $:^ \

Which version of GameMaker are you reporting this issue for?

IDE v2024.4.1.152 Runtime v2024.4.1.201

Which operating system(s) are you seeing the problem on?

Windows 10.0.22631.0

badab3b3-0971-4601-be26-6f8f7c98fd9f

ParodyKnaveBob commented 5 months ago

My repro step number 2 made me think... I only looked at stuff while a project was loaded...

I quit GM and started it back up. Even while it loaded, before showing me the recent projects list, it toggled up and down. Repro step number 1 is all that's necessary.

ParodyKnaveBob commented 5 months ago

Curiouser and curiouser.

To be clear, I haven't yet downgraded the IDE. It's still at 2024.4.1.152 with all the above observations. I'll downgrade the IDE installation next.

ParodyKnaveBob commented 5 months ago

Same behavior on 2024.4.0.137. Next, downgrading to 2024.2.x...

ParodyKnaveBob commented 5 months ago

I'm surprised and relieved:

Due to my aforementioned laptop problem and transfer and all that, this is the first time GM 2024.2.0.163 has been installed on this machine. It runs without the black-bottom-bar hiccup. Alt+Tabbing, opening dialogues, actually opening a project and dilly dallying around with the mouse -- it's all stable. There's definitely a difference between 2024.2 and 2024.4 that's not purely my Windows 11 machine's fault. (The latest version I'd run on my prior laptop, running Windows 10, was 2024.2, which of course never showed this problem, hence my needing to double check some of this stuff.)

stuckie commented 5 months ago

You wouldn't happen to remember if the bar appeared specifically when hovering over something like a button to bring up a tooltip? Or was there anything in particular your mouse was on to cause it?

Only if you can remember, don't want to make you ill with the juddering!

ParodyKnaveBob commented 5 months ago

@stuckie, thank you for checking -- and for the concern! $:^ ) I'll answer by quoting myself:

(while a project is loaded especially)

It seems mostly triggered by mousing over UI elements like buttons, scrollbars, window edges, etc., but it's inconsistent; it also seems the flashing text cursor can cause it.

(on the Start screen with no project loaded)

the black bar toggling was completely absent on the Start Page. Recent list, new game, etc., it's fine. Until! When I select the location button (folder icon), open button, or import button, the black bar appears -- and remains stable -- for as long as I have the resulting dialog up. The moment I cancel the pop-up, the little black bar vanishes again.

(when the black bar appears in any case)

[Windows 11's] screen capture app didn't want to ever capture the black bar.

(and to summarize a couple chunks of text) Alt+Tabbing from GM when at the Start Page with no black bar (e.g., Recent list, new game,) is fine. However, from another app, Alt+Tabbing back to GM while on its Start Page (with presumably no black bar) shows the bar briefly (probably for one frame), and then it's gone.

stuckie commented 5 months ago

I was more looking for how you were moving your mouse as a few things happen, and one of which is a slight change in the render state.

When you hover your mouse over a button, for instance, it'll change to a hover state and will change it's icon, become active, or do something to show that it should be clickable, for instance. If you leave your mouse on it for long enough, it'll generally display a tooltip with information on what that button does. To render that tooltip, it has to do some additional rendering in the background to generate the actual tooltip, and then add it to the screen.

Hence why I was specifically asking about tooltips, as that would give us somewhere to start looking as we can't reproduce it here, unfortunately.

ParodyKnaveBob commented 5 months ago

Ah, I believe my eyes previously jumped right over that tooltip phrase somehow.

It was never really a "sit and wait until a tooltip arrives" thing. It was always instantaneous. Mouseover a button, toggle. Mouseout and mouseover some other things, no toggle yet. Mouseover a scrollbar, toggle. Mouseout the scrollbar, toggle. Inconsistent, but really often, and always immediate afaik.

ParodyKnaveBob commented 4 months ago

Tried IDE v2024.6.0.157 with hope for programming happenstance. Nope, no accidental fixes. $;^ J

However, here's a guaranteed way for me to get it to toggle:

  1. Use Windows 11 with Taskbar visible. (Mine is set to bottom with left-aligned buttons; this probably doesn't matter.)
  2. Start GameMaker.
  3. On the Welcome to GameMaker screen... A. click Open or Import to move the focus from GM IDE proper to Open dialog. Bar appears. Cancel. Bar disappears. B. click New. Focus should be on GM IDE proper. No bar. C. show Recent Projects (list or grid view). Focus should be on GM IDE proper. No bar. D. from either New or Recent Projects (list or grid view):
    1. Hold Alt, press Tab, and keep holding Alt. After approximately one second, the bar appears.
    2. Refocus on GM IDE. No bar.
    3. Move mouse over the Taskbar (in a blank area for experiment control). No bar.
    4. Click on Taskbar (blank area). After approximately one second, the bar appears.
    5. Move mouse over GM IDE. Focus should still be on Taskbar. Almost immediately, no bar.
    6. Move mouse over Taskbar. Focus should still be on Taskbar. After approximately one second, the bar appears.
    7. Repeat v. and vi. to heart's content. Taskbar, second, black bar. GM IDE, immediately, no bar.

Clearly, it has issues with focus. Like you said, some difference in rendering.

After posting this, I'll use OBS to record footage of this and in-project activity.

stuckie commented 4 months ago

Hmm.. Windows 11... I didn't catch that because it lies and reports as Windows 10 and a bit. I'm actually still on 10 and not been able to reproduce as yet, and from that, it's not the rendering of the tooltips as I thought it was either. We have just updated the IDE's native backend libraries yesterday, as well as fixing a focus issue, so I'm wondering if that would have any effect - it didn't make the monthly, however, so you'll need to wait for a future beta release.

ParodyKnaveBob commented 4 months ago

Just for the sake of info, the VSync change in v2024.6.1.160 didn't affect this. (Start enabled, disable, re-enable, no changes.) Sorry for the delay on the screen recording -- not that you requested it of me, but I said I would, and then I let myself get delayed.

ParodyKnaveBob commented 4 months ago

Astounding! I recorded in OBS for 2 minutes, 40 seconds, and the resulting video showed none of the black bar issue! Frustrating. Also a potential clue, though...

stuckie commented 4 months ago

That's a pity... though I have managed to catch the IDE offsetting itself when I jump in and out of a fullscreen project; so I wonder if that's something similar ( and it is something already bugged. ) Though, yes, that's again going back to the idea of some surface shenanigans going on.

I'll need to spend some time combing over the changes between .2 and .4 to see what snuck in.

ParodyKnaveBob commented 4 months ago

Fwiw, I've not overridden the DPI settings during any of this. I tried just now to override to 100%, 125%, 75%, 50%, and 300%, and it seems the black bar appears at the same absolute size each time -- i.e., no noted difference amidst 50%, 300%, etc., in eyeball-measuring actual screen distance between the taskbar and the bottom of the IDE proper.

ParodyKnaveBob commented 4 months ago

I was really hoping GMC user Moth27 would chime in on this and #6515, but in lieu of the silence I'll post here. It might not be related, but like stuckie's possibly-related observation, Moth27 has experienced some kind of black-bar offsetting (among other things):

https://forum.gamemaker.io/index.php?threads/2024-6-release-thread.113707/#post-676571 https://forum.gamemaker.io/index.php?threads/2024-6-release-thread.113707/#post-676771

ParodyKnaveBob commented 4 months ago

Okay. @RhyminGarfunkle asked me a question that got my testing juices flowing in a few directions: https://forum.gamemaker.io/index.php?threads/2024-6-release-thread.113707/page-2#post-677180

The main takeaways methinks:

EDIT: It turns out, Steam's Web Helper was interfering somewhere in the mix below. It seems the computer was not actually leaving NVIDIA GPU to go back to integrated. I exited Steam, and now the black bar still disappears under NVIDIA GPU, but comes back when returning to auto/integrated. \~sigh\~ Anyway, here's the process I used before:

  1. Start in default auto-switch, the issue occurs.
  2. Switch to integrated, the issue occurs.
  3. Switch to NVIDIA GPU, the issue disappears.
  4. Switch back to auto or integrated, the issue remains disappeared.
  5. Boot computer in auto or integrated, the issue occurs (until switched to N GPU).
  6. Boot computer in N GPU, the issue disappears (until rebooted in auto or integrated).

This means I do have a workaround. Slightly tedious, but nothing atrocious, that's for sure. It also hopefully gives you more to work with. If my YYG Contact Package doesn't include enough info on my graphics modes, etc., just ask, and I'll get you what I can. Cheers! $:^ ]

EDIT: So, this means I just have to run the laptop in higher powered mode all the time if I want to keep GM open. Whatever. Still a workaround.

EvanSkiStudios commented 4 months ago

Okay. @RhyminGarfunkle asked me a question that got my testing juices flowing in a few directions: https://forum.gamemaker.io/index.php?threads/2024-6-release-thread.113707/page-2#post-677180

The main takeaways methinks:

  • The issue presents only when maximized -- not when in "restored" windowed mode.
  • Sanity check: The IDE -- not the Taskbar -- shows the black bar. (When Taskbar auto-hides, its pop-up appearance hides the black bar, and the IDE doesn't retoggle its position. Its pop-down disappearance shows the black bar at the bottom, and the IDE doesn't retoggle its position.)
  • The big one. NVIDIA Control Panel tinkering. Three options I have are to use the laptop's integrated graphics, the NVIDIA GPU, or (default) auto-switch between the two using some internal whitelist. Repro steps:
  1. Start in default auto-switch, the issue occurs.
  2. Switch to integrated, the issue occurs.
  3. Switch to NVIDIA GPU, the issue disappears.
  4. Switch back to auto or integrated, the issue remains disappeared.
  5. Boot computer in auto or integrated, the issue occurs (until switched to N GPU).
  6. Boot computer in N GPU, the issue disappears (until rebooted in auto or integrated).

This means I do have a workaround. Slightly tedious, but nothing atrocious, that's for sure. It also hopefully gives you more to work with. If my YYG Contact Package doesn't include enough info on my graphics modes, etc., just ask, and I'll get you what I can. Cheers! $:^ ]

Makes me wonder if its an driver issue, something with windows 11 I have noticed a lot is graphical issues, youtube screen tears for me but everything else is fine I wonder if its some change with the winapi or someother windows lib

ParodyKnaveBob commented 4 months ago

For the sake of it, I added GameMaker to my whitelist for NVIDIA -- the only time I've added an app manually -- and told it to use the N GPU. The black bar still appears. (Not just my repro for the start screen where we know the IDE loses focus and the bar stays solid, but inside a project where I just move the mouse around and even keep it still, and it volatilely toggles squeeze stretch squeeze stretch squeeze stretch.) It looks like it has to be a global NVIDIA setting for GM to remain stable.

stuckie commented 3 months ago

Just so we are on a level playing field again, the first August/2024.800 beta has been released and this includes updates to both the rendering and windowing libraries we use.

I'm hoping this has fixed it, if you are in a position to take a look.. otherwise we should be able to pin it down now that these changes are out.

stuckie commented 1 month ago

The current 2024.1100 beta should hopefully have this fixed. Please let us know if this is the case, if you are able to test this.

stuckie commented 1 month ago

I'm going to close this now as we haven't heard of any further issues with this. If you do have problems with this, then please let us know, and we can have another look.

Thanks!

scott-dunbar commented 1 month ago

Based on all the information presented here and my own testing i can note repro this either and have not heard any other reports of this issue.

Closing based on IDE v2024.1100.0.644 Runtime v2024.1100.0.665