4coder»Forums»Is Metal on MacOS a requirement?
4 posts
Is Metal on MacOS a requirement?
8 months, 2 weeks ago Edited by max++ on Feb. 11, 2020, 8:14 a.m.
Just bought 4.1.3, trying to launch and got a bunch of messages in console:
[CAMetalLayer nextDrawable] returning nil because device is nil.

The app is responsive but it doesn't do anything. No drawing, just black screen, hotkeys do nothing. Haven't tried to rebuild since I'm new to file structure.

4.0.30 works fine. So my guess is it tries to use Metal which is not supported on my GPU:
Chipset Model: Intel HD Graphics 3000
Type: GPU
Bus: Built-In
VRAM (Dynamic, Max): 512 MB
Vendor: Intel

I got an old MacBook pro 2011 and I'm happy with it, don't plan to upgrade any time soon. That also means I can't upgrade to anything later than MacOS 10.13.6.

Couldn't find anything on forums. Is it configurable, can I pick OpenGL, or am I wrong with my guess?
19 posts

Code Monkey

Is Metal on MacOS a requirement?
8 months, 2 weeks ago
OpenGL has been deprecated as of Mojave (10.14), though is still available, so Metal is a future OS requirement.
It's possible they only built for Metal, and not OpenGL, due to this eventual future?

I'm curious if they support running on OpenGL for Linux, and could maybe drop-in support for macOS without a lot of work?

I see 0xdeadc0de everywhere
4 posts
Is Metal on MacOS a requirement?
1 week, 5 days ago Edited by max++ on Oct. 12, 2020, 6:37 p.m.
I'll bump this. Can anyone who has a license for original source confirm that? Is Metal mandatory now? That turns 4coder unusable for me on MacOS
Simon Anciaux
899 posts
Is Metal on MacOS a requirement?
1 week, 4 days ago
You might get a faster answer by asking Allen on twitter or on the 4coder discord server.
Mārtiņš Možeiko
2145 posts / 1 project
Is Metal on MacOS a requirement?
1 week, 4 days ago Edited by Mārtiņš Možeiko on Oct. 14, 2020, 2:10 a.m.
Don't know anything about 4coder, but we're shipping GUI tool that uses OpenGL, and have not heard any complains from macOS users - maybe they don't upgrade their OS, that's why it still works, so not 100% sure about this.
19 posts

Code Monkey

Is Metal on MacOS a requirement?
5 days, 22 hours ago Edited by Steve on Oct. 19, 2020, 6:18 a.m.
Apps that use OpenGL are still available on Big Sur (macOS 11.0) even on any upcoming Apple Silicon Macs.

macOS 11.1 or later could drop support entirely, of course.


Is your worry that a current 4coder binary won't work on macOS Big Sur?
It should run fine if it currently runs on Catalina (at least with respect to OpenGL vs. Metal).

Or are you concerned about writing OpenGL code as part of your own "extension" (or binding) C code?
Sorry, I've not used 4coder, so I'm not sure if it's possible to easily hook into 4coder's OpenGL context, but if so it should work fine as long as 4coder is using OpenGL, and you'll have to transition your code to Metal if a future 4coder uses Metal.

1. Allen updates 4coder to support Metal (if not already), and you can update your extension code to use Metal instead of OpenGL.

2. Allen doesn't add Metal support to 4coder and you can run it until Apple no longer supports OpenGL in a future macOS 11.1 or later. You could always not upgrade, older versions are supported for at least a few years.

3. There's always the newly announced *free* VMWare Fusion Player that you should be able to use to run apps/games that use OpenGL and not Metal well into the future. (though not a guarantee, but more of a likely case)

4. It's also possible that Apple's Rosetta (2nd gen) that will allow x86 code to run on Apple Silicon and currently supports apps/games that use OpenGL.

* Having said all that it is recommended if 4coder is going to be supported beyond 2020 that it should switch its rendering layer to use Metal since there could be bugs that are either never fixed, or take a while before a fix is released (e.g. Rosetta's OpenGL breaks for some reason).

I see 0xdeadc0de everywhere