Live data from Hacker News

Deprecation of OpenGL and OpenCL

developer.apple.com

411–420 of 466 posts

Re: Deprecation of OpenGL and OpenCL

#411

Earlier quoted context omitted.

> OpenGL is only outdated on macOS Also on Windows. Apparently, if you want to distribute your software to wide audience, you can only rely on OpenGL 3.0, with minimal set of extensions. Here’s an example: https://github.com/Const-me/GL3Windows#building-and-running All the target systems had latest Windows updates, and they all run Direct3D 11 software just fine (I mostly develop for D3D and I test on them). On some…

No, you're getting stuck at 3.0 because you're hitting the deprecation strategy. You need to specifically request a post-3.0 context with wglCreateContextAttribsARB which you're not doing. Thus the system thinks you're an old legacy OpenGL app, and is giving you 3.0 as that was the last version before things were removed. See: https://www.khronos.org/opengl/wiki/Tutorial:_OpenGL_3.1_The... for a tutorial. My Pascal-b…

> No, you're getting stuck at 3.0 because you're hitting the deprecation strategy.

I think you’re wrong here. Two reasons.

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 2. Please read Intel’s documentation: https://www.intel.com/content/www/us/en/support/articles/000... Specifically, please expand “2nd Generation Intel® Core™ Processors” section. As you see in that table, Intel says HD Graphics 3000/2000 only support OpenGL 3.1, which is exactly what I’m getting from the GLEW library I’m using in that project.

Also, you can see in that article that no intel GPU supports GL 4.6 mentioned by GP. Even the latest generation UHD Graphics 620/630 only support GL 4.5. Meanwhile, they support the latest DirectX 12 for several years already.

Re: Deprecation of OpenGL and OpenCL

#412

Earlier quoted context omitted.

Indeed, I directly thought of 3d applications like Blender, Maya, etc which use OpenGL. It's a very weird move to me, even if the software in question will be kept compatible with Apple's Legacy OpenGL, these versions will be worse than their counterparts running on other platforms making use of new shiny OpenGL features. It's like Apple is saying 'we don't care' to the 3d professional market, also doesn't Photoshop…

After discontinuing AutoCAD for Mac in 1994 people begged for 18 years to get it back and now Apple says "eh, we didn't want that anyway." I heard they have a WebAssembly/WebGL version now, betting that'll get wrapped up in a WebView and we can all pretend it's a native program still. Speaking of WebGL, that's basically OpenGL ES 2.0, but I assume the implementation in WebKit is backed by Metal? What about other brow…

AutoCAD is a dead technology. Architects/Stuctural Engineers/MEP Engineers are moving to BIM platforms (Revit, ArchiCAD, etc)! Product/Automotive/Industrial design and engineering use PLM tools (Catia, SolidWorks, etc). Besides, AutoCAD didn’t/doesn’t need much graphics power at all. AFAIK it never really used OpenGL.

Re: Deprecation of OpenGL and OpenCL

#413

Earlier quoted context omitted.

Not everything that runs on OpenGL is a video game. Tons of applications out there that just won't have the budget to do a rewrite(and even fewer were probably setup with the right architecture if they were depending on OpenGL in the first place).

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.

Re: Deprecation of OpenGL and OpenCL

#414
post #393

Earlier quoted context omitted.

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…

You’re not giving history it’s due. Go back in time six years ago. What were Apple’s choices? (1) continue to live with the deficiencies of OpenGL. Remember that, over time, it had come to fail at one of its primary purposes which was to provide efficient access to GPU hardware. Further, sticking with OpenGL would be to accept the leadership of a group that had allowed its flagship standard to falter. (2) They could…

The time table is being pretty generous to Apple. Metal, Vulkan, and DX12 are reworked versions of Mantle.

The entire point of Mantle was to be a proof of concept that could be reworked into cross platform API (which became Vulkan), there was plenty of work already being done by Khronos in 2014 (and Apple knew this). And they just went out and released Metal anyway.

I also blame Microsoft for the same thing, early parts of the DX12 docs were taken word for word out of the Mantle docs, that's how similar they are. But Microsoft at least had couple decades of having a competing API, but Apple went out to create a new one for some reason.

Re: Deprecation of OpenGL and OpenCL

#415

Earlier quoted context omitted.

> How exactly does forcing developers to adopt a platform specific API help anyone? Well, platform specific APIs aren't lowest-common-denominator affairs, and get support for native platform capabilities faster (plus can be more optimized).

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.

Re: Deprecation of OpenGL and OpenCL

#416
post #329
post #117

Earlier quoted context omitted.

Pretty sure Unity is more heavyweight than a few hundred kilobytes of a library. It also doesn't come installed on my machine.

Depending on the project type, the final release package can be just a few hundred KB, like they do when targeting WebAssembly. OpenGL also does not come installed on my machine.

Right, but it still involves several gigabytes of largely unused functionality to get a “hello world” and it pigeonholes you into a specific ecosystem. Unity is an entirely different offering from a graphics api.

Re: Deprecation of OpenGL and OpenCL

#417
post #230
post #216

Earlier quoted context omitted.

So why lock in macOS at all?

Because the developers who would be working on OpenGL on macOS are working on Metal instead, because that's where the value is for Apple.

Maybe.... why would you assume they continue developing for macs at all? Small studios might not have the resources, and the market is tiny for many apps, eg indie games, modeling software, and ML (to be fair, apple has repeatedly emphasized they don’t care about ML on the desktop by not offering nvidia cards...).

And again, I don’t see the benefit for apple over supporting cross platform apis to encourage development. It seems like a net loss for everyone but some line in their budget on driver maintenance.

Re: Deprecation of OpenGL and OpenCL

#418
post #397

Earlier quoted context omitted.

Now that prebuilt PCs tend to be cheap and limited, anyone who wants something better needs to build the machine from parts.

Prebuilt pcs were cheap in the '90s and '00s as well. Premium brands like AlienWare still exists for gamers.

But in the 90s laptops were insanely expensive. :-)

Re: Deprecation of OpenGL and OpenCL

#419
post #344

Earlier quoted context omitted.

If you look at the most recent Steam hardware survey though 96.3% of players are on Windows and 3.07% are on macOS. I don't know if that's "flourishing rapidly". It's certainly going up slowly. https://store.steampowered.com/hwsurvey/Steam-Hardware-Softw...

Mac has twice the amount of users on Steam that Linux has. And game studios mostly ignore Linux. Apple making themselves precious is not going to win them any hearts in the game industry.

Oh yes, don't get me wrong, I totally agree!

Re: Deprecation of OpenGL and OpenCL

#420

Earlier quoted context omitted.

No, you're getting stuck at 3.0 because you're hitting the deprecation strategy. You need to specifically request a post-3.0 context with wglCreateContextAttribsARB which you're not doing. Thus the system thinks you're an old legacy OpenGL app, and is giving you 3.0 as that was the last version before things were removed. See: https://www.khronos.org/opengl/wiki/Tutorial:_OpenGL_3.1_The... for a tutorial. My Pascal-b…

> No, you're getting stuck at 3.0 because you're hitting the deprecation strategy. I think you’re wrong here. Two reasons. 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 2. Please read Intel’s documentation: https://www.intel.com/content/www/us/en/support/articles/000... Specifically, please expand “2nd Generation Intel® Core™ Processors” se…

> 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 in that article that no intel GPU supports GL 4.6 mentioned by GP. Even the latest generation UHD Graphics 620/630 only support GL 4.5. Meanwhile, they support the latest DirectX 12 for several years already.

ok, so? 4.5 isn't really outdated, either. It still supports all the modern good stuff. And, as we've established at this point, it's not Window's stopping you from leveraging the full extent of the hardware you have. By contrast macOS does stop you from using the hardware you got to the fullest, as it's stuck on 4.1

Post reply on HN