Open kunaltyagi opened 4 years ago
Shifting to Vulkan is a good idea, but regarding Metal: Who uses PCL on a mac?
Switching to Vulkan seems like a good idea considering the decline of OpenGL. I am little skeptical about the licensing related to MoltenVK, there is no guarantee that they will not shift to a paid licensing model in the future. Depending on how much effort would be required to port an maintain Metal, we can consider that too.
I am little skeptical about the licensing related to MoltenVK, there is no guarantee that they will not shift to a paid licensing model in the future.
A considerable number of relatively big open source projects switched to it and Valve seems to be financing things to ensure it remains open source. Notably Wine, which I assume would be very strict with its licensing choices. I this was a real threat for them, I don't believe they would have adopted it. Given that, I would rather stick with to MoltenVK, than go for platform dependent code.
We would be interested in running PCL with vulkan drivers. This would enable PCL to be run on the following GPUs:
Looking for people with more experience in OpenGL/Vulkan to help create a migration plan.
I and my organization would be interested in helping add vulkan support.
Looking for people with more experience in OpenGL/Vulkan to help create a migration plan.
Is your feature request related to a problem? Please describe.
OpenGL has been in deprecation since MacOS 10.9 and has been fully replaced by Metal 2 in 10.14. It can be removed at Apple's whims. Vulkan was essentially
glNext
so we should be moving ahead anyways.Describe the solution you'd like
Options (in increasing order of likelihood):
If we shift to Vulkan instead, we can use libraries such a MoltenVK (Vulkan over Metal) to maintain one single code for all platforms. A lot of engines have reported that refactoring using Vulkan gives them significant speed-ups on the same hardware.
Describe alternatives you've considered
In the mean time, we can shift to GLOVE (GL over Vulkan) + MoltenVK to keep using current implementation in Mac.