Currently we use VirGL + ANGLE to translate GL (guest) to Metal (host). This works decently (on Linux) but the downside is that it’s buggy (crashes) and more modern Linux applications and games are moving to Vulkan.
Venus translate guest Vulkan calls to host Vulkan calls.
MoltenVK translates host Vulkan calls to Metal calls.
It is worth exploring this pairing to see if it’s a) more stable and b) more performant.
Note that neither solution currently has Windows guest support so that will have to be developed separately.
Currently we use VirGL + ANGLE to translate GL (guest) to Metal (host). This works decently (on Linux) but the downside is that it’s buggy (crashes) and more modern Linux applications and games are moving to Vulkan.
Venus translate guest Vulkan calls to host Vulkan calls.
MoltenVK translates host Vulkan calls to Metal calls.
It is worth exploring this pairing to see if it’s a) more stable and b) more performant.
Note that neither solution currently has Windows guest support so that will have to be developed separately.