Khronos Brings Vulkan to macOS, iOS, After Apple Refuses to

Khronos Brings Vulkan to macOS, iOS, After Apple Refuses to

Apple loves to position itself as being on the cutting edge of OS research and development, but its long-term support for graphics APIs it didn’t develop in-house has been generally terrible. macOS is still limited to OpenGL 4.1, which was released in July, 2010. To put this in roughly approximate terms, imagine if Microsoft had quit evolving its graphics APIs with DirectX 11.0 and still expected everyone to rely on it for gaming and professional applications. Apple has launched its proprietary API for iOS and macOS, Metal, but it refused to support Vulkan, the open-source, low-overhead API intended to match DirectX 12 in the PC space. Fed up with this approach, the Khronos Group, which maintains Vulkan, has announced its own effort to bring Vulkan support to macOS and iOS whether Apple approves of it or not, via a thin translation layer.

Khronos has partnered with Valve, LunarG, and the Brenwill Workshop to create an SDK and libraries that allow for Vulkan development on macOS and iOS. Valve has also extended DOTA 2 to create a version that runs significantly faster under Vulkan on macOS than it does using Apple’s native OpenGL, as shown below:

Khronos Brings Vulkan to macOS, iOS, After Apple Refuses to

This image compares Vulkan vs. native OGL code on three separate platforms: AMD FirePro D500 and a Mac Pro (2013), an Nvidia GT 650M (2012 MacBook Pro) and an Intel Iris Pro MacBook Pro (2014). It’s not surprising that the discrete solution would benefit the least, since Vulkan can’t magically fix limited EDRAM or memory bandwidth, but the 1.13x speedup on Intel integrated is still enough to notice.

Khronos Brings Vulkan to macOS, iOS, After Apple Refuses to

Here’s the high-level overview for how code is mapped and translated from Vulkan to the Metal API. The end result is a game that performs better than the native OGL variant, at least in theory.

Khronos notes that only a few features had to be removed from the Vulkan Portability Initiative to hit this target, including:

The long-term goal is to improve feature compatibility and to extend support both within the translation layer and to encompass other competing APIs, like DirectX 12. The rosiest view of this compatibility effort is that a Vulkan translation layer could make it easier to support DirectX 12 games in a non-Windows environment, though such support has historically been difficult enough to enable that I’m a bit leery of drawing that conclusion. Either way, however, these changes suggest Mac gaming could see a boost if more developers choose to support Khronos’ efforts in this space.

Continue reading

Nvidia’s New GV100 Brings Volta to the Quadro Family

Nvidia's latest Quadro GPU brings Volta — and ray tracing — to the professional workstation market.

NASA, ESA Aim to Bring a Piece of Mars Back to Earth

The first phase of the mission will kick off with the NASA 2020 Mars rover, but the return mission is still in the early planning stages.

How AI Is Bringing the Vatican Secret Archives Into the Light of Day

A new AI translation project is turning the contents of the Vatican Secret Archives into text that the general public may one day be able to read. The advance could make hundreds of years of Catholic Church history directly accessible to researchers.

Nintendo Won’t Bring Virtual Console to the Switch, Plans Online Service

Nintendo won't be bringing the Virtual Console to Switch — but its Switch Online Service should pack the same capabilities into its subscription program.