Live data from Hacker News

Deprecation of OpenGL and OpenCL

developer.apple.com

441–450 of 466 posts

Re: Deprecation of OpenGL and OpenCL

#441
post #32

Ugggggh. As if graphics support on macOS weren't middling enough already. It's like they're trying to become as irrelevant as possible in that area. I could understand if they were deprecating it in favor of Vulkan. That would be in-line with Apple's history of aggressively pushing forward new standards. But by no means do they have the clout to coerce developers into their own bespoke graphics API that doesn't work…

I've been using a cross-platform GUI framework/engine to do app development on all the platforms: Linux, MacOS, Windows, iOS and Android - and it has been a joy to deploy one app on all of these systems.

One of the reasons this has been so feasible has been the fact that the engine (MOAI) uses GL ES to manage the framebuffer itself - giving the same look and feel on all platforms the host runs. This has been, honestly, revolutionary in terms of building a single app that runs everywhere.

This now becomes more complicated because the engine has to be modified for Apple platforms to use Metal, and represents another fork/splinter in the unity of the host itself.

I wonder if their decision to use a non-standard graphics API is due to them wanting to make this style of development a lot more difficult in the future - i.e. are Apple passively antagonizing the cross-platform framework builders in order to establish an outlier condition for their platforms? The cynic in me says yes, of course this is what they are doing ..

Re: Deprecation of OpenGL and OpenCL

#442
post #32

Ugggggh. As if graphics support on macOS weren't middling enough already. It's like they're trying to become as irrelevant as possible in that area. I could understand if they were deprecating it in favor of Vulkan. That would be in-line with Apple's history of aggressively pushing forward new standards. But by no means do they have the clout to coerce developers into their own bespoke graphics API that doesn't work…

Apple must truly hate gaming, or suffer from a serious case of Not Invented Here with their Metal stuff. As if any serious gaming studio would target Metal which doesn't run on Windows. In fact, they couldn't get their act together, keep with current versions, and as a result titles like Elite Dangerous were being shut down anyway. Reason: OpenGL stuck on an old version without support of compute shaders. https://for…

No games aren't going to target Metal to support the Mac any more than printer manufacturers are going to go out of thier way to support AirPrint to make printers Mac compatible.

What developers will do is go out of thier way to support iOS and supporting the Mac is just a side benefit. Just like almost every printer company supports the Mac as a byproduct of wanting to support iOS.

Re: Deprecation of OpenGL and OpenCL

#443

Earlier quoted context omitted.

Hypothesis: There are more machines in consumer hands which support Metal than DirectX. This may sound crazy, but remember there are billions of iOS devices out there in the world, and I don't think X boxes plus windows game machines count in the billions. Its true Apple hasn't won the hard core gamer market, but they are no longer the niche player that had to cater to windows users.

Android runs OpenGL ES and there are a lot more of those than iOS devices.

Are there more Android devices that actually have hardware that can actually play high end games decently? The average Android phone is a low end phone - with an average selling price of $225 for all Android phones how can they not be?

Re: Deprecation of OpenGL and OpenCL

#444
post #309

As someone who read this with an editor full of OpenCL kernels, I think apple must really have missed the point of these sort of frameworks - heterogeneous computing. If I wanted the best possible speed, latest features ect. I would write multiple back ends in things like CUDA. I choose OpenCL because I can develop code on my Macbook pro, and run that on a computer with a discrete GPU on a different operating system,…

> I choose OpenCL because I can develop code on my Macbook pro, and run that on a computer with a discrete GPU on a different operating system, and have a fair amount of confidence that it would work. That was the promise, but it never became reality. When writing kernels for real-world applications, OpenCL breaks down in numerous ways. The result is usually neither stable, nor portable, nor fast and a pain to work w…

I know that Apple is commercial organisation and not a charity but projects like Blender bring a lot to the platform.

It would be great to find out later that Apple had reached out to the Blender dev team with a strategy on how to move to either Metal or a Vulcan/Metal adaptor.

Personally I was thinking about getting an eGPU just for Blender use. It would be a shame to have to leave macOS just to run Blender.

Re: Deprecation of OpenGL and OpenCL

#445

Earlier quoted context omitted.

Hypothesis: There are more machines in consumer hands which support Metal than DirectX. This may sound crazy, but remember there are billions of iOS devices out there in the world, and I don't think X boxes plus windows game machines count in the billions. Its true Apple hasn't won the hard core gamer market, but they are no longer the niche player that had to cater to windows users.

I've yet to see anyone build a hardcore Mac gaming machine. Oh wait, you can't.

You can with an external GPU.....

Re: Deprecation of OpenGL and OpenCL

#446
post #413

Earlier quoted context omitted.

LibreOffice uses OpenGL and OpenCL extensively.

Why use Libre Office on a Mac when Pages, Numbers and Keynote are free (as in beer)? I’m going to go out on a limb and make a baseless argument that the Libre Office install base on the Mac is very low. On iOS it’s non-existent.

Having used pages and word, please don't tell people to use Pages for everything.

It doesn't have the features you need when you're creating more complex documents. Last time I've used it it didn't even allow you to have different sections which allow you switch between the rotation of pages.

Re: Deprecation of OpenGL and OpenCL

#447

Earlier quoted context omitted.

I don't think it's much of an incentive. According to Valve's hardware surveys roughly 3% of Steam's market is MacOS. Those type of numbers are similar across different distribution platforms that a Unity game dev will target. It'll be hard to nudge it away from low priority with that share. https://store.steampowered.com/hwsurvey/Steam-Hardware-Softw...

The other figure to look at is the amount of money spent. If it's similar to the hardware percentage then you're right, if on the other hand, macOS users spend more on games then a rethink is in order.

Do you have a source for that? Because I can't really find a figure. Genuinely curious.

Re: Deprecation of OpenGL and OpenCL

#448

Earlier quoted context omitted.

I understand their benefits. But why refuse to support standards as well? I don't think Apple is short on resources.

I think because then you don't give developers the extra motivation to use your platform APIs.

That just means the benefits don't outweigh the down side - lack of cross platform API, new learning curve to climb.

Re: Deprecation of OpenGL and OpenCL

#449

Earlier quoted context omitted.

> 1. If that would be the case, I would be stuck with GL3.0 regardless on the GPU. In reality, I’m only stuck with GL version Behavior depends on if the device supports 3.2+ compatibility mode which is optional. You're hitting the legacy path, that's well-defined ( https://www.khronos.org/registry/OpenGL/extensions/ARB/WGL_A... ). You need to use the method I mentioned to get real post-3.0 OpenGL. > Also, you can see…

> depends on if the device supports 3.2+ compatibility mode which is optional. For the systems I have in this house it’s not required, i.e. I’m getting the same OpenGL version that’s advertised by the GPU vendors. > You need to use the method I mentioned to get real post-3.0 OpenGL. Either I don’t, or the authors of that GLEW library https://www.opengl.org/sdk/libs/GLEW/ already did that. When running on modern GPUs,…

Just a nitpick, OpenGL 4.0 is newer than DirectX 11.0 and on par in capabilities.
Post reply on HN