godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
89.84k stars 20.97k forks source link

Editor wide glitch after idling in the background #54247

Open golddotasksquestions opened 2 years ago

golddotasksquestions commented 2 years ago

Godot version

v4.0.dev.20211015.official [f113dc986]

System information

Windows 64bit, Nvidia dedicated 765M

Issue description

I had Godot 4 idling in the background (not visible) for a while I was working in the Browser and on Godot3 projects. When I came back to bring Godot 4 window into the front again, this is what I saw:

godot_4_glitch

The Editor has not crashed btw. I can still zoom in and out and everything feels as responsive as usual. It's just totally glitched in terms of rendering.

Steps to reproduce

Not exactly sure how to replicate this other than have Godot 4 idle in the background. I've had this happening a few times already, not regularly or often though, but also with much older builds. I don't think that a new issue.

The project and scene is basically empty. I think it just had two sprite nodes in it, that's it.

Minimal reproduction project

No response

KoBeWi commented 2 years ago

Does it still happen in the newest alpha?

golddotasksquestions commented 2 years ago

I have not experienced this in a while, so I will close this issue now. Note I also don't use the current Alpha very much (since crucial parts for me, like clipping and CanvasGroups are still broken). Will reopen in case I see this again.

golddotasksquestions commented 2 years ago

Reopening, because it just happened again when I clicked the play button to run the project: (I did not change the default theme btw, this purple color is part of the glitch) image

reduz commented 1 year ago

This somehow looks like video driver context was lost, I am not entirely sure if Godot related because we did not have more reports about this. IMO this is most likely driver/hardware related and also most likely beyond the ability to fix from the Godot side (if video driver context is lost, then not much can be done). But lets keep it open to see if more information appears.

reduz commented 1 year ago

It could be interesting also to know if this is Vulkan or OpenGL and if it happens with both drivers.

Calinou commented 1 year ago

(if video driver context is lost, then not much can be done)

IIRC, the video context needs to be recreated after resuming from suspend. To support that use case, we'd need to implement a means for the rasterizer to be restarted, which is far from trivial. See also https://github.com/godotengine/godot/issues/52738.