Announcement

Collapse
No announcement yet.

MoltenVK Picks Up Metal 3.0 Capabilities, More Vulkan Features On macOS

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • MoltenVK Picks Up Metal 3.0 Capabilities, More Vulkan Features On macOS

    Phoronix: MoltenVK Picks Up Metal 3.0 Capabilities, More Vulkan Features On macOS

    The open-source MoltenVK is out with another new update based against the Vulkan 1.1.126 specification and allowing the Vulkan API to be used on Apple's macOS and iOS by mapping those calls to the underlying Metal graphics drivers...

    http://www.phoronix.com/scan.php?pag...Metal-3.0-Caps

  • #2
    Let's hope that in 5-10 years 99% of cross-platform applications and game engines will just use Vulkan and use MoltenVK for targeting macOS...

    ...see, Apple? This is what you make us do. Compatibility layers due to arrogance.

    Comment


    • #3
      Does Zink work over MoltenVK?

      Comment


      • #4
        Has their been any technical reason for Metal at all or was this just some "we want our own low-level graphics API" move by Apple?
        I still don't see what advantages it brings to anyone over using Vulkan.
        Be it Apple, devs or users.

        Comment


        • #5
          Originally posted by msotirov
          Metal was released 2 years before Vulkan at a time where OpenGL was going nowhere and DirectX obviously wasn't an option.
          Which doesn't justify Apple's current position on Vulkan. It almost looks like the reason for Metal exclusivity nowadays is "[email protected]#$ you, that's why!"

          Comment


          • #6
            There is no need to refactor Metal onto Vulkan, they can coexist. Drivers are written by hardware manufacturers, it won't cost a lot to Apple. But yeah, you're right, it's their money/business and they make decisions on it.

            Comment


            • #7
              Originally posted by msotirov
              Metal was released 2 years before Vulkan at a time where OpenGL was going nowhere and DirectX obviously wasn't an option.
              If Apple really cared about graphical APIs and games, they would have improved its OpenGL and GLES support instead of supporting several version older versions, years behind Windows and Linux.

              If you're thinking "yeah, but why would they update a high level API when they had a modern low level API like Metal?", I have to remind you Apple was using outdated versions of OpenGL several years before Metal was conceived. OpenGL was the only thing they had for games and applications, and still let it stagnate and didn't update it, despite newer version were more efficient and facilitated porting apps. They simply didn't care.

              Apple could have waited two years for Vulkan like they waited several years for any OpenGL update, but the company wanted to take advantage of its dominant position to promote a standard of its own, so iOS app devs would have it a bit harder to port apps to other platforms (Android).

              Comment


              • #8
                Originally posted by msotirov

                I get why it might seem to you that way but at the end of the day it's just business. When you're a billion dollar company, you don't scrap years of investment in custom mobile SoCs and low level software just because some consortium releases a new graphics API. Only time will tell if their decision to not refactor Metal onto Vulkan was correct but if market value is any measure, so far it hasn't been wrong.
                According to the information found on MoltenVK's github, the majority of Vulkan calls maps more or less immediately to a similar Metal call. The known limitations are very few and do not seem to be to relevant (link). Apple might simply have decided that MoltenVK is good enough. It also relieves them of supporting Vulkan themselves.

                On a technical level, I read somewhere that Metal does more memory management for you than Vulkan does. This is probably why the allocation callbacks in Vulkan are ignored.

                Comment


                • #9
                  Originally posted by msotirov
                  Metal was released 2 years before Vulkan at a time where OpenGL was going nowhere and DirectX obviously wasn't an option.
                  They could work on some open standard instead of adding another one that's proprietary to their platform.

                  Comment


                  • #10
                    Originally posted by GruenSein View Post

                    According to the information found on MoltenVK's github, the majority of Vulkan calls maps more or less immediately to a similar Metal call. The known limitations are very few and do not seem to be to relevant (link). Apple might simply have decided that MoltenVK is good enough. It also relieves them of supporting Vulkan themselves.

                    On a technical level, I read somewhere that Metal does more memory management for you than Vulkan does. This is probably why the allocation callbacks in Vulkan are ignored.
                    The way that I understand this is that Matal and Vulkan are both derived from the same base software. As noted metal actually shipped earlier so the slight differences are now backed in. For the most part the mapping from Vulkan to Metal is fairly straight forward with a lot of direct mapping.

                    Comment

                    Working...
                    X