7 ms·
OpenGL isn't pretty, but it's at least cross-platform. And my impression was that OpenGL support is mostly handled by the GPU manufacturers, so I'm not sure how
by fabian2k 8y ago
OpenGL isn't pretty, but it's at least cross-platform. And my impression was that OpenGL support is mostly handled by the GPU manufacturers, so I'm not sure how much Apple gains here by deprecating OpenGL.
Requiring developers to use an API locked to a particular platform feels pretty hostile to me. Doesn't matter if that API isn't perfect, or even far from it.
- pavanky 8y agoI mean it wouldnt be that big of a problem if they adopted Vulkan, but they are pushing Metal :-/
- coldtea 8y ago>Requiring developers to use an API locked to a particular platform feels pretty hostile to me. So like DirectX?
- larsiusprime 8y agoI sure hate it when Microsoft does it, but at least they have market share. Who wants to support Metal just to target the Mac? And last I checked I have the choice of OpenGL and Vulkan on Windows because these days MS doesn't control the hardware stack from top to bottom on their software platform.
- coldtea 8y ago>I sure hate it when Microsoft does it, but at least they have market share. Who wants to support Metal just to target the Mac? Plenty of big 3D/CAD/etc players? In lots of creative areas, the Mac dominates still (despite stories about people moving to Windows nobody's going anywhere, where nobody = quite few creatives overall). Besides, with Metal they'll target iOS as well, and that's a huge platform, and where most of the profits are for mobile.
- janoc 8y agoCAD on Mac is pretty much non-existent, as is any professional 3D market - the market share isn't there, the hardware support is terrible, so few major players bother with supporting Macs. All this stuff is either Windows (CAD) or Linux (3D simulation, visualization) these days. And with this deprecation Mac is pretty much dead as a platform for professional 3D.
- busterarm 8y agoCreative Suite has run better on PC and at better price-performance ratio for almost a decade. Graphic Designers still like Macs for the most part I guess -- and I still see them in video production a lot, but that's starting to change pretty quickly.
- sangnoir 8y ago> I still see them in video production a lot, but that's starting to change pretty quickly. I think the Final Cut "Pro" X was the inflection point - the change is ongoing.
- sbuk 8y agoVisualisation is largely done on Windows, mainly with 3dsmax. Has been for a while. Linux is used more in movie VFX.
- taharvey 8y agoYour view of visualization is a limited world: windows and Max?
- amag 8y agoOpenGL is still an option on Windows, it's not deprecated.
- msbarnett 8y agoIt’s not deprecated because it’s not even there to begin with — Windows 10 doesn’t ship OpenGL by default; GPU vendors provide their own implementations. Which AFAIK they’re free to do on MacOS as well, they just don’t seem to bother since Apple was doing that work for them
- wolfgke 8y ago> Which AFAIK they’re free to do on MacOS as well, they just don’t seem to bother since Apple was doing that work for them As far as I am aware Apple develops the GPU drivers for OS X (though, I think, based on code that the GPU vendor provides).
- coldtea 8y agoOpenGL is not a driver though, it's a graphics API
- wolfgke 8y agoAt least on Windows, the OpenGL implementation is part of the graphics driver. Why? Because by default Windows only has between rudimentary (at least up to Vista, I think; I am not sure about Windows 7 and 8.1) and no (Windows 10) OpenGL support - this is what the GPU vendors provides as part of his graphics driver.
- msbarnett 8y ago> At least on Windows, the OpenGL implementation is part of the graphics driver. It's distributed with the Graphics Driver, but most of it exists in a user space library, not in the driver proper.
- 8y ago
- drb91 8y agoExactly like DirectX. Great API to use if you don't give a shit about portability. If you do, it's useless.
- isaiahg 8y agoNo not like DirectX because DirectX is optional.
- DCKing 8y agoAlthough I agree it's a terrible decision for Apple only to have Apple-specific graphics APIs, please note that: * Being deprecated does not mean that things will suddenly stop working. It will take a few more releases of macOS before this can be removed. * Next to MoltenVK there is MoltenGL, which is an implementation of OpenGL ES 2.0 that runs on (edit) Metal [1]. That indicates it's at least feasible to wrap OpenGL applications in the future if necessary. Furthermore, Apple wil drop support for all Macs that don't support Vulkan in this release of macOS [2]. Ouch, what a waste. [1]: https://moltengl.com/moltengl/ https://moltengl.com/moltengl/ [2]: https://9to5mac.com/2018/06/04/macos-10-14-mojave-supported-macs/ https://9to5mac.com/2018/06/04/macos-10-14-mojave-supported-... (anything from before 2012 does not support Vulkan)
- seba_dos1 8y agoDid you mean Metal instead of Vulkan? :P
- 013a 8y agoIt seems like a clear signal that Apple is preparing to develop its own GPUs. They're already doing this on the iPhones.
- SomeHacker44 8y agoThis is the most obvious explanation I have read on HN... After I read it!
- RantyDave 8y agoNah. The GPU on Intel chips is free and the eGPU thing, to me, is official notification that Apple think GPU's should be on the outside. I bet this generation of MacBook Pros are the last to have discrete graphics...
- lotyrin 8y agoYou don't get free Intel GPUs on your ARM laptop chips...
- outworlder 8y ago> And my impression was that OpenGL support is mostly handled by the GPU manufacturers You would be correct, but not on OSX.
- GuB-42 8y agoOpenGL is pretty. Much prettier than these Metal and Vulkan abominations. The difference is that OpenGL is designed to be easy for humans. glBegin(GL_TRIANGLES); glVertex3f(x, y, z)...; glEnd(); you can't beat that. The issue is that it hard for the driver to optimize. That's where Metal and Vulkan come into play. These are low level APIs, sacrificing user friendliness for a greater control over the hardware. It is designed for 3D engines, not for application developers.
- jblow 8y agoNope, glVertex3f was deprecated years ago by OpenGL itself. That is not the way the API works any more. [1] Look into what it takes to write the minimum viable OpenGL program, written using non-deprecated routines, that puts a textured triangle on the screen. It sucks. On top of that, OpenGL is slow and gives you no way to create programs with smooth performance -- for example, it will randomly recompile shaders behind your back while you are trying to have a smooth frame rate. 1990s-style OpenGL was good for the time. In 2018, OpenGL is a pile of poop. [1] https://www.khronos.org/opengl/wiki/Legacy_OpenGL https://www.khronos.org/opengl/wiki/Legacy_OpenGL
- thewizardofaus 8y agoEach to their own but over the last 6 months I've written a graphics engine in openGL + SDL. Once you truly understand modern openGL you realise how beautiful it is.
- jblow 8y agoYou will think it's less beautiful when you ship that game on several platforms and find that it has different bugs on each platform, on each hardware version, and on each driver version. And most of these bugs you can't fix or work around, you just have to bug the vendor and hope they ship a fix in a few months, which they usually won't because your game is too small for them to care about. This happens in other APIs too (we definitely had it happen with DX11), it's just that OpenGL is a lot more complicated than anything else due to its history, so it has proportionally more bugs.