I am not sure if I understood it correctly, but OpenGL is high-level like Java and Metal is low-level like Assembly, aren't they? Apple seems to have abandoned OpenGL in favour of Metal, but there still are a few popular applications that use OpenGL like Blender. I think I have read that because of Apple's lack of support for OpenGL, Blender development is hindered.

Then, I wondered if some developers could implement an OpenGL library using Metal, and Blender could use that library. Then the developers of individual applications like Blender would not have to waste their time rewriting the applications in Metal. Is that kind of library plausible? I have searched Google for that, but all I could find was an OpenGL-ES-to-Metal project. I don't know whether OpenGL and OpenGL ES have similar architecture or not, so I am not sure the existence of that library means such a library for OpenGL is possible or not.

  • $\begingroup$ It is perfectly plausible. But (without knowing the internals of blender) the graphics API should just be an abstracted software layer so it is likely much easier to just write a metal API interface for blender. $\endgroup$
    – pmw1234
    Feb 6, 2021 at 16:22
  • $\begingroup$ I see that the Vulkan over Metal initiative is still going and Blender is moving towards a Vulkan implementation: developer.blender.org/T68990 $\endgroup$
    – pmw1234
    Feb 6, 2021 at 16:31
  • $\begingroup$ So, in the end, Blender will abandon OpenGL and move to Vulkan? The linked page has Linux X11 checked. Does this mean that the task has already been done at least on Linux as of now? $\endgroup$ Feb 6, 2021 at 20:53
  • 1
    $\begingroup$ It looks like they have a ways to go before they can support Vulkan, I wouldn't expect it to happen right away. But it certainly looks like Blender is going in that direction. The first version may support both OpenGL and Vulkan buts that just a guess. $\endgroup$
    – pmw1234
    Feb 7, 2021 at 1:07


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.