ConfettiFX / The-Forge

The Forge Cross-Platform Rendering Framework PC Windows, Steamdeck (native), Ray Tracing, macOS / iOS, Android, XBOX, PS4, PS5, Switch, Quest 2
Apache License 2.0
4.65k stars 491 forks source link

Apple silicon m1 fixes #208

Closed izackp closed 2 years ago

izackp commented 3 years ago

Fixes build and runtime problems that I've noticed on apple m1.

It does revert to using a depreciated api to get the display name.

I wanted to verify changes didn't effect Intel Macs, however, there seems to crash in vmaAllocateMemory on both the master branch and this branch for unit test 1. It seems like my MacBook doesn't support placement heaps, so no allocator is created even though it is required. The fallback util_find_heap_with_space doesn't seem to be usable in a specific scenario according the comments.

I ran the unit tests and all but a few build and run. Though the tests that don't work are like unit test 16a where the project seems to be outdated because it uses .metal shaders instead of .fsl

Visibility_Buffer still crashes the driver on startup.

wolfgangfengel commented 3 years ago

Thanks for looking into this. We have a branch on our internal Gitlab system where development for M1 support is happening. Please note all our development doesn't happen here in GitHub but internally on GitLab. If you want to test or contribute I can invite you to the GitLab server and you can contribute there.

wolfgangfengel commented 2 years ago

Thanks again for the input. Your changes are all in GitLab and should be released with the next release ... hopefully in the next few days. If you would be interested, we would invite you to our private GitLab server and you could make changes there directly.