godotengine / godot

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

Vulkan (MoltenVK) rendering backends crashing on older Macbook (Intel HD 530, OpenCore) #95623

Open alexzheng opened 3 months ago

alexzheng commented 3 months ago

Tested versions

4.3 stable

System information

14.4.1 2.9 GHz Quad-Core Intel Core i7 Radeon Pro 460 4 GB Intel HD Graphics 530 1536 MB

Issue description

4.3 stable keep crash when create or open project

Steps to reproduce

download 4.3 stable open it create a new project it always crash

Minimal reproduction project (MRP)

Archive.zip

akien-mga commented 3 months ago

Your Macbook is fairly old and probably doesn't support Metal (i.e. Vulkan) sufficiently for using Godot's Forward+ and Mobile backends. Does it work if you create a GL Compatibility project?

alexzheng commented 3 months ago

It works when create a GL Compatibility project. I checked my Mac, it shows Metal Support: Metal 2 And it work for Forward+ and Mobile backends in 4.2

akien-mga commented 3 months ago

Could you test earlier dev/beta/rc snapshots for 4.3 to find the first one where the Forward+/Mobile backends stopped working on your Macbook? https://godotengine.org/download/archive/

alexzheng commented 3 months ago

Since the connection to GitHub is very poor in my location, it's hard to download all the 4.3 releases. I have just tested 4.3rc1, it's not work. The last stable release works is 4.2.2.

akien-mga commented 3 months ago

You can also download from TuxFamily if that works better for you: https://downloads.tuxfamily.org/godotengine/4.3/

Also, which macOS version are you using?

alexzheng commented 3 months ago

4.3dev 1 works. However a waning dialog popup when open the project. Warning:This project uses the following features not supported by this build of Godot: Forward Plus

Open anyway? Project will be modified.

alexzheng commented 3 months ago

Mac OS 14.4.1

dev2 dev3 works without any warning.

crash start from dev4.

alexzheng commented 3 months ago

MacBook Pro is 2016 later, I use openCore Legacy Patcher update to 14.4.1.

akien-mga commented 3 months ago

MacBook Pro is 2016 later, I use openCore Legacy Patcher update to 14.4.1.

Thanks, then this might be the same issue as #95226.

It seems like Metal drivers on OpenCore are buggy.

akien-mga commented 3 months ago

dev2 dev3 works without any warning.

crash start from dev4.

Thanks! Here's the changelog for dev4: https://godotengine.github.io/godot-interactive-changelog/#4.3-dev4

I don't see a priori which of the rendering or porting changes may trigger a driver bug, but at least we've narrowed down the range.

If you are able to compile Godot from source, you could then try to bisect further (following https://docs.godotengine.org/en/stable/contributing/workflow/bisecting_regressions.html) and identify the exact commit that caused the issue. Then we might be able to find a workaround.

To bisect, you'd do it between 4.3.dev3 (36e943b6b, git bisect good) and 4.3.dev4 (df78c0636, git bisect bad).

alexzheng commented 3 months ago

Sorry, I can't and have not that enough time to build each commit.