-
-
Notifications
You must be signed in to change notification settings - Fork 21.3k
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
Editor crashes when you minimize it (Windows, GL Compatibility, old Intel chipset) #95068
Comments
Can't replicate this on Windows 11, more details to replicate this are needed |
Those are all the details, the bug is very simple and I am reviewing the source code of that version to see if I find the error |
Then this is likely hardware or driver related as I can't replicate this with your instructions (I tested both with Forward+ and Compatibility) |
It must also be because of my hardware since it does not support Vulkan, but I can find an explanation |
My computer has a fourth generation Intel i5, it supports up to OpenGL 4.3 and does not support Vulkan. And it has 8GB of ram |
Try to start "cmd" first, then Godot, the terminal window should stay open with the crash message. try also |
Like original bug: Windows 10 - Godot 4.3 rc-2 - OpenGL3 (Compability) Getting the same/similar problem, Godot_v4.3-rc2_mono_win64 crashes when minimised. Also randomly crashing without warning while I'm working in Visual Studio, possibly because it is put into background.. Both the main Godot window and command window are shut down without warning. This has not been a problem with previous versions of Godot. Looking in event viewer, I see two errors: Faulting application name: Godot_v4.3-rc2_mono_win64.exe, version: 4.3.0.0, time stamp: 0x66aacc79 AND: Application: Godot_v4.3-rc2_mono_win64.exe ALSO: When verbose mode is switched on, the following messages are logged to the command window just before it is closed.
Bugsquad edit: Fix formatting. |
No crash reproduced on a very old PC, perhaps over 12 years old.
After a project has been started, this information can also help with troubleshooting (API Version, and which GPU is prioritized) |
Created a new test project (Compatibility mode). Did nothing but minimise Godot and Godot crashed. Re-opened the empty test project, did nothing but minimise Godot and again it crashed. Yes it is an old laptop, but this problem did not exist in 4.3_rc1 mono. Godot v4.3.rc2.mono - Windows 10.0.19045 - GLES3 (Compatibility) - Intel(R) Iris(TM) Graphics 6100 (Intel Corporation; 10.18.15.4279) - Intel(R) Core(TM) i3-5157U CPU @ 2.50GHz (4 Threads) |
Just went back and double checked Godot_v4.3-rc1_mono_win64 to be sure and it definitely does not crash. |
Sorry, I missed the request for API version and GPU prioritisation: |
crash.mp4same issue here, the runtime, editor and proj. list all crash when minimized. Godot v4.3.rc3 - Windows 10.0.19045 - GLES3 (Compatibility) - Intel(R) HD Graphics 405 - Intel(R) Pentium(R) CPU N3710 @ 1.60GHz (4 Threads) error it printed out b4 closing
|
|
download from Google Drive 47 MB, virus check on virustotal.com I have created with |
the backtrace w/ the debug build:
|
Just downloaded v4.3.rc.custom_build and initial tests are promising. Creating a new test project and simply minimising Godot is fine (no crashing). Opening the same empty project, and simply minimising is fine. Created a basic empty Node2D screen and it runs with no issues. Because my project uses the mono version, I can't really test it too much further. If you can provide a mono version, I will happily use that for a while. Thanks for your efforts. |
took a while because i had to install WinDbg :p here's the error + call stack
|
This comment was marked as off-topic.
This comment was marked as off-topic.
ok 😃 my Dev path: @ahopness / @Snowlette Can you also reproduce the crash with pdb filesI tried it and forced a crash. Unfortunately, delivering 'pdb' files in the same folder does not work.
godot/drivers/gles3/rasterizer_gles3.cpp Line 418 in 88f3b5f
A few months ago, we added a workaround for Android with |
The crash doesn't happen in the versions 4.2.1 and 4.2.2 about that pdb file: the crash backtrace with the .pdb in the right directory spills the same stuff as the windbg callstack:CrashHandlerException: Program crashed
Engine version: Godot Engine v4.3.rc.custom_build (88f3b5f9d52f740b24fabfb8bc01b8b7026ba279)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[0]
[1]
[2]
[3]
[4]
[5] RasterizerGLES3::_blit_render_target_to_screen (D:\Develop\github-godot\drivers\gles3\rasterizer_gles3.cpp:418)
[6] RasterizerGLES3::blit_render_targets_to_screen (D:\Develop\github-godot\drivers\gles3\rasterizer_gles3.cpp:437)
[7] RendererViewport::draw_viewports (D:\Develop\github-godot\servers\rendering\renderer_viewport.cpp:829)
[8] RenderingServerDefault::_draw (D:\Develop\github-godot\servers\rendering\rendering_server_default.cpp:88)
[9] RenderingServerDefault::draw (D:\Develop\github-godot\servers\rendering\rendering_server_default.cpp:410)
[10] Main::iteration (D:\Develop\github-godot\main\main.cpp:4123)
[11] OS_Windows::run (D:\Develop\github-godot\platform\windows\os_windows.cpp:1666)
[12] widechar_main (D:\Develop\github-godot\platform\windows\godot_windows.cpp:180)
[13] _main (D:\Develop\github-godot\platform\windows\godot_windows.cpp:206)
[14] main (D:\Develop\github-godot\platform\windows\godot_windows.cpp:220)
[15] WinMain (D:\Develop\github-godot\platform\windows\godot_windows.cpp:234)
[16] __scrt_common_main_seh (D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288)
[17]
-- END OF BACKTRACE --
+ new windbg callstack:(2634.1cb0): Access violation - code c0000005 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
ig8icd64!DrvSetLayerPaletteEntries+0x1eb06:
00007ffc`05f329b6 8b4110 mov eax,dword ptr [rcx+10h] ds:00000000`00000010=????????
0:000> k
# Child-SP RetAddr Call Site
00 0000006c`80ffe330 00007ffc`05f914af ig8icd64!DrvSetLayerPaletteEntries+0x1eb06
01 0000006c`80ffe360 00007ffc`05f3a5ee ig8icd64!DrvSetLayerPaletteEntries+0x7d5ff
02 0000006c`80ffe5b0 00007ffc`05da13b2 ig8icd64!DrvSetLayerPaletteEntries+0x2673e
03 0000006c`80ffe690 00007ff6`0cc0bf8a ig8icd64!RegisterProcTableCallback+0xc2c2
04 0000006c`80ffe700 00007ff6`0cc0c998 godot_windows_editor_dev_x86_64!RasterizerGLES3::_blit_render_target_to_screen+0x4ea [D:\Develop\github-godot\drivers\gles3\rasterizer_gles3.cpp @ 418]
05 0000006c`80ffe860 00007ff6`1049a665 godot_windows_editor_dev_x86_64!RasterizerGLES3::blit_render_targets_to_screen+0xe8 [D:\Develop\github-godot\drivers\gles3\rasterizer_gles3.cpp @ 437]
06 0000006c`80ffe8e0 00007ff6`0fdc93ce godot_windows_editor_dev_x86_64!RendererViewport::draw_viewports+0xef5 [D:\Develop\github-godot\servers\rendering\renderer_viewport.cpp @ 829]
07 0000006c`80ffef40 00007ff6`0fdca8d9 godot_windows_editor_dev_x86_64!RenderingServerDefault::_draw+0x1ae [D:\Develop\github-godot\servers\rendering\rendering_server_default.cpp @ 88]
08 0000006c`80fff220 00007ff6`0b7cedc7 godot_windows_editor_dev_x86_64!RenderingServerDefault::draw+0x109 [D:\Develop\github-godot\servers\rendering\rendering_server_default.cpp @ 410]
09 0000006c`80fff290 00007ff6`0b73b766 godot_windows_editor_dev_x86_64!Main::iteration+0x987 [D:\Develop\github-godot\main\main.cpp @ 4123]
0a 0000006c`80fff650 00007ff6`0b732b2e godot_windows_editor_dev_x86_64!OS_Windows::run+0x66 [D:\Develop\github-godot\platform\windows\os_windows.cpp @ 1666]
0b 0000006c`80fff690 00007ff6`0b732c23 godot_windows_editor_dev_x86_64!widechar_main+0x1fe [D:\Develop\github-godot\platform\windows\godot_windows.cpp @ 180]
0c 0000006c`80fffac0 00007ff6`0b732c62 godot_windows_editor_dev_x86_64!_main+0x43 [D:\Develop\github-godot\platform\windows\godot_windows.cpp @ 206]
0d 0000006c`80fffb00 00007ff6`0b7325fd godot_windows_editor_dev_x86_64!main+0x12 [D:\Develop\github-godot\platform\windows\godot_windows.cpp @ 220]
0e 0000006c`80fffb40 00007ff6`1149c936 godot_windows_editor_dev_x86_64!WinMain+0x2d [D:\Develop\github-godot\platform\windows\godot_windows.cpp @ 234]
0f (Inline Function) --------`-------- godot_windows_editor_dev_x86_64!invoke_main+0x21 [D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl @ 102]
10 0000006c`80fffb70 00007ffc`59d77374 godot_windows_editor_dev_x86_64!__scrt_common_main_seh+0x106 [D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl @ 288]
11 0000006c`80fffbb0 00007ffc`5addcc91 KERNEL32!BaseThreadInitThunk+0x14
12 0000006c`80fffbe0 00000000`00000000 ntdll!RtlUserThreadStart+0x21
|
Do you dare to perform I'm not sure if PR #87352 could have anything to do with it. |
lol what a wierd litte bug... |
I agree with @ahopness, neither 4.2 or 4.2.1 exhibited this crash, Godot has been very stable for a while now, however I did double check. It is not possible to perform the test with a 'New' project, as the project.godot file must be manually edited to compatibility mode. That said, I could not get either version to crash when working with the edited project. |
According to this the regression would have been introduced in 4.3.rc2, so one of these commits: https://godotengine.github.io/godot-interactive-changelog/#4.3-rc2 Can other affected users confirm that 4.3.rc1 doesn't reproduce the crash, but 4.3.rc2 and 4.3.rc3 do? CC @bruvzg @alvinhochun @godotengine/rendering |
FYI, as you probably guessed, crash still occurs in Godot_v4.3-rc3_mono_win64. Intel(R) Iris(TM) Graphics 6100 This appears to be the latest driver compatible with this laptop. There does appear to be a later driver on the Intel website, but it is not compatible. |
This driver is newer (2022) and should support Iris 6100: https://www.intel.com/content/www/us/en/download/18369/intel-graphics-driver-for-windows-15-40.html?wapkw=iris%206100 You might just need to force Windows to accept installing it, because your OEM might have locked it to only accept their own vendored and outdated Intel drivers. See https://www.intel.com/content/www/us/en/support/articles/000056629/graphics.html |
So if someone who can reproduce the issue can also compile Godot from source, the most useful extra info here for debugging would be to pinpoint which commit introduced the regression. That might inform us on what may be triggering a bug in the Intel drivers, and maybe give some hints on how we could work it around. Here's our guide on how to bisect regressions: https://docs.godotengine.org/en/latest/contributing/workflow/bisecting_regressions.html The bisection needs to be done between 4.3.rc1 (should be the |
OK so I've performed an initial attempt to install that version of the graphics driver (win64_15.40.5171) and I'm getting the following error: The driver being installed is not validated for this computer. Please obtain the appropriate driver from the computer manufacturer. Setup will exit. Would you like more information? Click Yes to be directed to the Intel support website. Clicking 'Yes' takes you to the following web site: https://www.intel.com/content/www/us/en/support/articles/000005469/graphics.html Which advises you to identify your Intel Processor and its Generation: Processor: Intel(R) Core(TM) i3-5157U CPU @ 2.50GHz, 2494 Mhz, 2 Core(s), 4 Logical Processor(s) Whilst for sixth generation and later, installation of a generic driver seems fine, for fifth generation processors and earlier, the web page gives the following caveat: We advise you to always get the latest driver from your computer manufacturer. However, if your computer manufacturer no longer provides new drivers or you prefer to install a newer Intel generic driver, you can perform a clean installation of a generic Intel® Graphics Driver. Caution: Be aware that you risk system instability, losing functionality, or causing other technical issues that OEM drivers seek to resolve or enable. Whilst I'll attempt to install the driver once I've done a full backup, advice to install generic drivers may may not be for the best for everyone. |
@Snowlette That's fair. I've used that procedure myself without issue in the past on Intel HD 4000 (3rd gen), but I can't guarantee that it works, so indeed - disclaimer, attempt that update at your own risk, as Intel disclaims themselves. |
Does
|
Yeah that's a good point, we could consider enabling ANGLE by default on those known buggy drivers for old Intel gen. |
It may be interesting to see what's being passed to
I skimmed through the commit messages but didn't notice anything suspicious: Seems like a bisect will be needed to get to the bottom of it. I don't have a usable Windows installation on my Haswell laptop (or is it Broadwell?), that may or may not even reproduce show the issue, so I don't think I will try to test it. The Intel graphics driver version 4279 is really quite old though (2015?), and from my experience with Krita, Intel OpenGL drivers before and around that era can be quite broken in weird ways (for instance between versions 4636 and 4729 exclusive there was a bug with window client area sizing that plagued all Qt applications using OpenGL). I would suggest to force any Intel drivers older than a certain version to use ANGLE by default. Just be careful with parsing the build number correctly: https://www.intel.com/content/www/us/en/support/articles/000005654/graphics.html |
Since the 4.3 release is imminent, I think we shouldn't rush a solution, so let's take the time to evaluate the best approach (bisecting to identify the exact commit, testing some logic to enable ANGLE either for these GPU unconditionally or only for older drivers, etc.) and backport the fix to 4.3.x. |
godot.windows.editor.dev.x86_64.debugout.zip 48 MB Download
|
Could affected users try that build from #95520 and see if it works properly? |
just tested, working perfectly on my machine |
Bisect done between 4.3.rc1 (should be the good commit, e343dbb) and 4.3.rc2 (bad commit, 3978628). Bisecting: 67 revisions left to test after this (roughly 6 steps) Bisecting: 33 revisions left to test after this (roughly 5 steps) Bisecting: 16 revisions left to test after this (roughly 4 steps) Bisecting: 6 revisions left to test after this (roughly 3 steps) Bisecting: 3 revisions left to test after this (roughly 2 steps) Bisecting: 0 revisions left to test after this (roughly 1 step) Bisecting: 0 revisions left to test after this (roughly 0 steps) |
Performed a very limited test on the build from #95520 and it does not crash when minimising Godot. |
Thanks. I think I found a problem in the change, but I am not entirely sure if it is the cause. I'll try to make a PR in a bit. |
Can anyone of you try with #95526? |
You can test with the CI build here: https://github.com/godotengine/godot/actions/runs/10394414706/artifacts/1813320527 |
just tested on my pc, its working fine |
Tested versions
Reproducible in Godot 4.3 rc-2
System information
Windows 10 - Godot 4.3 rc-2 - OpenGL3 (Compability)
Issue description
When I minimize godot when it is starting or with the debug open or with the editor open minimized, it crashes.
Steps to reproduce
Open a project in Godot 4.3 rc-2 and minimize it twice, there is a crash and Godot.exe does not respond
Minimal reproduction project (MRP)
2024-08-02.09-07-41.mp4
The text was updated successfully, but these errors were encountered: