Close

NAP Framework - Naivi.nl

EXTENDING APPLICATION REACH

Vulkan and Porting Layers

The Vulkan Portability Initiative enables consistent use of open-source porting layers to enable your application to deploy on platforms without Vulkan native drivers, such as macOS and iOS. Vulkan has also been designed to support a variety of porting layers that can bring applications using other APIs, such as Direct3D, to Vulkan-enabled systems.

NAP Framework - Naivi.nl

Vulkan on PC, Linux and MacOS.

Porting NAP Framework to Vulkan

Discover how Naivi.nl ported their NAP Framework to feature parity rapidly, optimized where possible and make sure all the NAP demos run equally well on Windows, Linux and macOS.

Read Now

DEPLOY VULKAN APPLICATIONS ON SYSTEMS WITHOUT NATIVE VULKAN DRIVERS

Vulkan Portability Initiative

Vulkan® Portability™ fights platform fragmentation by enabling the consistent use of layered implementations of Vulkan functionality over Metal, DX12 and other APIs. The Vulkan Portability extension standardizes queries for available layered API functionality and enables all provided functionality to be conformance tested. MoltenVK is a leading example of a layered Vulkan Portability implementation that runs over Apple’s Metal API.

Vulkan Portability Initiative

Path of Exile - Grinding Gear Games

DEPLOY VULKAN APPLICATIONS ON SYSTEMS WITHOUT NATIVE VULKAN DRIVERS

Vulkan Portability Initiative

Vulkan® Portability™ fights platform fragmentation by enabling the consistent use of layered implementations of Vulkan functionality over Metal, DX12 and other APIs. The Vulkan Portability extension standardizes queries for available layered API functionality and enables all provided functionality to be conformance tested. MoltenVK is a leading example of a layered Vulkan Portability implementation that runs over Apple’s Metal API.

  • A provisional version of Vulkan Portability Extension 1.0 was released in September 2020 and is shipping today in both MoltenVK and gfx-portability

    Find Out More

  • This repository provides a focus and tools to help application developers understand and provide input to the Vulkan Portability initiative, including the VK_KHR_portability_subset Vulkan extension.

    Find Out More

  • The Vulkan SDK includes a MoltenVK runtime library for macOS. If you are developing a Vulkan application for macOS, it is highly recommended that you use the Vulkan SDK and the MoltenVK library included in it.

    Find Out More

  • gfx-rs is a low-level graphics and compute abstraction library in Rust. The API is based on Vulkan but adapted to be more Rust-friendly. The gfx-backend contains graphics backends for various platforms now including support for Metal (runs on macOS and iOS).

    Find Out More

  • Ashes is a drop-in replacement or ICD to Vulkan. It allows to write Vulkan code, and to select the rendering API that will be used. It also comes with ashespp, a C++ wrapper for Vulkan.

    Find Out More

  • The Vulkan Capabilities Viewer is a developer tool for probing the hardware capabilities exposed by the latest versions of Vulkan and MoltenVK (Vulkan over Metal). For developers using Vulkan layered over the Metal graphics API, this tool enumerates all the hardware capabilities and limitations of the device it is run on.

    Find Out More

BRING NON-VULKAN APPLICATIONS TO VULKAN-ENABLED PLATFORMS

Porting Layers

Want to get your DX or OpenGL games running on platforms with Vulkan support? Check out the translation tools below which make it easy to run popular graphics APIs on top of Vulkan.

Porting Layers

Evil Genius 2 - Rebellion Developments

BRING NON-VULKAN APPLICATIONS TO VULKAN-ENABLED PLATFORMS

Porting Layers

Want to get your DX or OpenGL games running on platforms with Vulkan support? Check out the translation tools below which make it easy to run popular graphics APIs on top of Vulkan.

  • DXVK is a Vulkan-based translation layer for Direct3D 9/10/11 which allows running 3D applications on Linux using Wine.

    Find out more

  • Runs Direct3D 9 applications on Windows or Linux (/w Wine) over Vulkan.

    Find Out More

  • VKD3D-Proton is a fork of VKD3D, which aims to implement the full Direct3D 12 API on top of Vulkan. The project serves as the development effort for Direct3D 12 support in Proton.

    Find Out More

  • CrossOver is the easiest way to run many Microsoft applications on your Mac without a clunky Windows emulator.

    Find Out More

  • ANGLE allows users of multiple operating systems to seamlessly run WebGL and other OpenGL ES content by translating OpenGL ES API calls to one of the hardware-supported APIs available for that platform.

    Find Out More

  • GLOVE (GL Over Vulkan) is a cross-platform software library that acts as an intermediate layer between an OpenGL ES application and Vulkan.

    Find Out More

Industry Support for MoltenVK

"All in all, we’re pleased with what we’ve managed to accomplish. A barrier that many, including ourselves, originally thought unbreakable has been cracked wide open, and the best part is: this is just the beginning. With not only our own efforts to improve the core emulation, but upcoming updates to Metal 3 and the constantly improving MoltenVK, the experience is only going to get better."

"We will be relying on MoltenVK to be the benchmark that we compare our native Metal backend against going forward. And it should perform that role excellently, as it is bringing our well tested Vulkan backend to macOS through a very well supported translation layer from a team that has earned our trust. So, while our new native Metal backend is faster, MoltenVK is here to stay. Together, they will help us deliver the most consistently reliable and performant experience that we can give to our macOS users"

"I was initially skeptical about the use of a Vulkan translation layer to Metal, but it turns out MoltenVK enables applications using the real-time NAP Framework to run as well on macOS as they do on Linux and Windows. This is something I would like to highlight and stress the importance of - without the portability of Vulkan we would have been forced to implement a special Metal rendering backend just for macOS users, something not doable for a relatively small company such as ours. Plus switching to Vulkan dramatically improved render-times for Mac users."

"Valve extended Dota 2 to use Vulkan and ported that version to macOS using MoltenVK. This port achieved significantly higher performance than the native Apple OpenGL® drivers. Valve has now shipped multiple games titles on macoS and iOS using MoltenVK and we believe that Vulkan Portability can significantly reduce development and porting costs for any developer supporting multiple platforms."

Pierre-Loup Griffais Valve

“With MoltenVK, we've worked hard to bring a consistent Vulkan-based API to macOS and iOS while maintaining the performance improvements required by modern game developers.”

"MoltenVK has been hugely valuable to us by providing the ability to execute our Vulkan code on Apple platforms without any discernable performance penalty versus writing a native Metal implementation but more importantly without requiring any modification of the code itself."