OpenGL is deprecated in 10.14 Mojave

@slackmoehrle are cocos2d-x developers maybe working on it :slight_smile: ?

Maybe the cocos team should switch to Vulkan (Android 7+, Windows, Linux) and MoltenVK (macOS, iOS). So they have only one API to maintain -> Vulkan.

2 Likes

We are just learning about this. No plan yet but I’m sure we need to deal with this :slight_smile:

4 Likes

would it be hard for cocos2d-x to support metal ? does this mean that cocos2d-x will not work with ios in the future since they are deprecating openGL ES ?

Knowing Apple if they deprecate something in one version, they remove it in the next one, so we’ll better figure out something quickly. That’s why I like Android more - backward compatibility is amazing. Apple removes all things they don’t like (curse you Apple for removing C-style for loop).

It’s time for bgfx.

https://developer.apple.com/macos/whats-new/
https://developer.apple.com/ios/whats-new/

2 Likes

By the way: won’t removing OpenGL on MacOS kill gaming? I mean older games like let’s say Diablo II.

1 Like

I think it is a longer deprecation cycle than removing in the next release.

But @piotrros is right. This will kill all old games, which depends on OpenGL.

I can understand the Apple move, because they want to force to transformation to Metal. But from the end user point of view, it’s not a good step.

They think developers will be forced to update their apps, but that will work for iOS only.

I have an important question from cocos team.
Is supporting metal has highest priority for next release?

1 Like

Is there anyone who has OpenGL & Metal skills and understands all this, so who can technically comment how it is really affect us in future? In a wide sense.

Like this is should be a new engine version from scratch and for easy supporting it it should have no problems with backward comparability, so no OpenGL with in?

I have Mac and games is not about it :smiley:

1 Like

But you are not the default user. You are a developer and even other developers are using macOS for cocos2d-x.

Actually, the old games are the best on Macs, because they run smoothly on the embedded graphics card.

1 Like

This is annoying, and I hope Apple makes the process smoother than it currently appears.

Having said that here’s a few thoughts:

  1. Many games that run on Macs now have already been “ported” from earlier binaries. Therefore if they were recently released on Steam or GoG (or similar) then it’s likely they will be re-ported to support Metal.
  2. It’s only deprecation, which means at earliest users won’t be affected until late-2019, possibly if they do follow a longer deprecation path even later.
  3. For older games it’s likely they’d run well enough in a Virtual Machine
  4. Users can always keep an older computer around to play these games just like games we can no longer play on today’s OS/API/Hardware (granted again, most are avail through emulation/VMs).
  5. It’s possible someone (or ideally Apple) could write a thin-layer of binary GL abstraction, and since shaders are compiled at runtime on Mac, there’s less issue on that front.
  6. A translation framework/library can be written to support every OpenGL (ES) version that iOS/Mac supported to allow any developers to compile their GL game that executes Metal through the translation. e.g. MoltenGL, but supporting more versions.

So what all these means for current cocos2d-x ?

what about using external open source render like :


or SDL2?

1 Like

We dont know yet.

1 Like

So should we start a topic of “What if Cocos2d-x switched to bgfx”? To discuss rendering, what does losing OpenGL mean, etc?

4 Likes

I think that would be a good idea!