Apple deprecating OpenGL

It seems that Apple has announced deprecating the OpenGL support on MacOS and IOS devices…

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

 

Deprecation of OpenGL and OpenCL

Apps built using OpenGL and OpenCL will continue to run in macOS 10.14, but these legacy technologies are deprecated in macOS 10.14. Games and graphics-intensive apps that use OpenGL should now adopt Metal. Similarly, apps that use OpenCL for computational tasks should now adopt Metal and Metal Performance Shaders.

Metal is designed from the ground up to provide the best access to the modern GPUs on iOS, macOS, and tvOS devices. Metal avoids the overhead inherent in legacy technologies and exposes the latest graphics processing functionality. Unified support for graphics and compute in Metal lets your apps efficiently utilize the latest rendering techniques.

 

What impact will this have on Corona? Have you guys decided/discussed the way forward? I know nothing of Metal so forgive me if this is not an issue…

I would also like to know, since Corona uses Graphics with openGL.  :huh:

While reading this announcement, i stumbled on this MoltenGL.

But it looks like it’s not totally free.

They are deprecating it on macOS. There are no references to it being deprecated in specific versions of iOS. Deprecation doesn’t mean removal immediately.  Our engineers are aware of this statement from Apple. There are other paths forward that doesn’t involve OpenGL and our engineers are investigating it.

Rob

Thank you for comforting us.  :smiley:

There are now references. It is confirmed across both MacOS and IOS.

Official Announcement

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

Last 2 paragraphs on page

"Deprecation of OpenGL ES

Apps built using OpenGL ES will continue to run in iOS 12, but Open GL ES is deprecated in iOS 12. Games and graphics-intensive apps that previously used OpenGL ES should now adopt Metal.

…"

Also, now mentioned on various tech sites, such as

https://www.pcper.com/news/General-Tech/WWDC-18-OpenGL-OpenCL-Are-Deprecated-Mac-iOS

I’ve had a quick look around.  Vulkan is only supported by android from version 7 (nougat), which is at least cross platform, and there is already MoltenVK from Khronos which translates from Vulkan to Metal. Unity supports Metal already.  I’m not aware of any other option that would work on both IOS and Android, which I consider Corona’s primary targets.

My guess is that in the IOS update next year, Apple would likely remove opengl support, and Corona needs to be prepared for that, with an alternative graphics system. 

Any thoughts from anyone on the Corona team?

If this will affect iOS then this is a much more serious development.

This will affect IOS, as linked above, from the date IOS12 is released.  It’s possible it won’t be removed next year, but deprecation creates risk and uncertainty that Corona developers won’t want. From the deprecation step, Apple effectively would have the ability to withdraw support in any future release, and justify it with the deprecation warnings made already.

I’m currently developing a mobile game in Corona.  Ican assume I have at least a year where OpenGL, and Corona will operate.  But, in looking forward to next projects and planning,  I would be wary of Corona without this being addressed.

It is only 1 day since announcement, so I don’t expect a roadmap out of the blue, but I would be happy to hear any kind of reaction from Corona, or their view of this.

Our engineers learned about this just about the same time you do. Obviously we want Corona to be around for a long term as you do and we will adapt to changes as required by Apple. I can’t give you a time line or even an estimate for putting this on the roadmap. 

Rob

if metal has up to 3x improvement on rendering speed then this is something surely high up on priorities?

Thanks for the updates Rob.  Since this affects everyone’s business, especially Corona Labs, I’m sure this is going to become high priority?  Apple has a history of depreciating then removing APIs within months, not years like other platforms.

Do you have an idea when we’ll hear an official path forward from Corona?  I know this just broke and you’re still doing research, but hopefully we’ll hear within the next couple weeks as we all need to start thinking of our businesses future and whether Corona is a viable platform moving forward.

Corona will be a viable platform moving forward. This announcement may mean we have to change some internals, but it shouldn’t have an impact on you.

Rob

Hi @Rob, does Corona have a roadmap in regards to IOS Metal integration? Even if the Apple says the opposite, OpenGL will work on these platforms for some time, but i think, OpenGL will not be supported on the specified platforms after each OS gets the first patch. That’s my guess but probably it will be happening.

In order to relief ourself, we need to hear from Corona about this and how it is going to be covered and when.

BR,

Seha 

We have added this to our roadmap to look at later in the year. Having Corona work on Apple operating systems (iOS, tvOS and macOS) is very important for us. We are going to be supporting some form of GPU based technology on those platforms.  I don’t know if it will be Metal or some other cross-platform but supported technology.

Rob

Having thought some more.  The first possible time this could be removed is IOS13 which would be announced at Apple’s WWDC in June 2019, and released to devices in September 2019.

This is very unlikely, many developers, not just games engines, have used OpenGL on IOS and MacOS for years, because they release their software on other platforms, and OpenGL is the only cross platform solution.  This includes most other cross platform frameworks and many game engines.

If Apple removed this functionality, it would affect 100,000s or millions of apps.  Obviously they want to encourage developers to use Metal their (better) API. Also, Apple is signalling they won’t be upgrading their version of OpenGL.

I think the earliest possible removal of OpenGl on IOS (and even that would be surprising) would be September 2020.  By that time, Corona will have a solution.

Better we now spend our energy and thoughts on making our games and apps - good, fun and popular.

This all sounds like a reboot of Microsoft’s Silverlight attempt to corner the latest and greatest graphics engine. Developers revolted and now it’s dead as of Sept. 2012.

yup… if they can mess it up they will…

Any news on this, either from Apple or from Corona? Came to think about it yesterday and got a little worried that Corona apps won’t be able to run on future iOS versions…  :wacko:

I would also like to know, since Corona uses Graphics with openGL.  :huh: