Are there any plans to support modern graphics API’s like Vulkan and if so are the ideas and details documented anywhere? I would be interested in aiding with this but if there are none I just might make my own custom branch and implement it for myself.
It is planned, but there are a few things to keep in mind.
You can’t just implement it to support the same higher level graphics API. This is a sure way to get worse performance. The rendering pipeline needs to be reworked to take advantage of the Vulkan/DirectX 12/Metal approach to rendering. This will likely mean a different API to the end user for the lower level drawing APIs.
The need for new video cards is a factor for me as well. My 5xx series GeForce card is not supported by any Vulkan drivers I have found, including LunarG.
If you’re familiar with Vulkan you could help out to design that API.
Here’s the GitHub issue that originally addressed the need for a new API: https://github.com/MonoGame/MonoGame/issues/4571
But IMO it’d be better to open a new issue for discussing the actual API design.
Yes, it needs to be planned out to take advantage of the API’s I am aware. That was mostly what my question was asking. If there were any plans on how it is desired to be implemented. For example, if I start working on my own API that works how I personally want it, but it’s not how the design was planned it seems like it would be a waste of resources when I could work on it and everybody could benefit from it.
This thread shows how Monogame needs a major change, without being constrained from XNA’s legacy.
This is not just about Vulkan, but overall on every aspect
The whole point of MonoGame was a spiritual and open source successor to XNA though.
If Monogame’s purpose is to remain compatible with XNA then no Vulkan/DX12 port should be considered.
With the fact XNA died 5 years ago, I think no one should expect a future for Monogame.
If porting XNA 4 games to other platform is a need, I would rather give a try to FNA
Vulkan/DX12 will be new platforms with a different API, but that doesn’t mean the existing graphics API for DX/GL will be thrown out.