godotengine / godot

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

Godot 4.3 win64 crashes on startup #95142

Open PiCode9560 opened 1 month ago

PiCode9560 commented 1 month ago

Tested versions

I tested on 4.3-beta1 and 4.3-rc2. 4.2 worked fine

System information

Windows 10.0.22631 - GLES3 (Compatibility) - Intel(R) UHD Graphics 620 (Intel Corporation; 25.20.100.6518) - Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz (8 Threads)

Issue description

I was messing around with a custom godot build from #94321. I compiled it for windows x86_64. It worked fine. Then I compiled it for x86_32 by accident. I forgot what happened next, maybe I was playing around with the x86_32 build. But when I tried to open any godot 4.3 x64 build, it just crashes.

Here is the backtrace:

================================================================
CrashHandlerException: Program crashed
Engine version: Godot Engine v4.3.beta.custom_build (52ed05f413673170642d5ab2c01334496e793e4d)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[0] <couldn't map PC to fn name>
[1] <couldn't map PC to fn name>
[2] <couldn't map PC to fn name>
[3] <couldn't map PC to fn name>
[4] <couldn't map PC to fn name>
[5] <couldn't map PC to fn name>
[6] <couldn't map PC to fn name>
[7] <couldn't map PC to fn name>
[8] ShaderGLES3::_load_from_cache (C:\godot\drivers\gles3\shader_gles3.cpp:605)
[9] ShaderGLES3::_initialize_version (C:\godot\drivers\gles3\shader_gles3.cpp:701)
[10] GLES3::CopyEffects::CopyEffects (C:\godot\drivers\gles3\effects\copy_effects.)
[11] RasterizerGLES3::RasterizerGLES3 (C:\godot\drivers\gles3\rasterizer_gles3.cpp)
[12] RenderingServerDefault::_init (C:\godot\servers\rendering\rendering_server_de)
[13] RenderingServerDefault::init (C:\godot\servers\rendering\rendering_server_def)
[14] Main::setup2 (C:\godot\main\main.cpp:2831)
[15] Main::setup (C:\godot\main\main.cpp:2461)
[16] widechar_main (C:\godot\platform\windows\godot_windows.cpp:165)
[17] _main (C:\godot\platform\windows\godot_windows.cpp:208)
[18] main (C:\godot\platform\windows\godot_windows.cpp:220)
[19] __scrt_common_main_seh (D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288)
[20] <couldn't map PC to fn name>
-- END OF BACKTRACE --
================================================================

I tried fixing it by updating graphic driver. It kind of worked. But then later, after I played around with both x64 and x32 version, and somehow x64 crashed again.

Here's the previous conversation about this

Steps to reproduce

idk

Minimal reproduction project (MRP)

no

bruvzg commented 1 month ago

Try deleting shader cache (files in the C:\Users\{USER_NAME}\AppData\Roaming\Godot\shader_cache\ folder and {PROJECT_PATH}\.godot\shader_cache\ folder), cached shaders probably have the same name (since it's based on engine version) and might be incompatible between 32-bit and 64-bit apps (probably driver specific).