Confused on Steam Play and Proton? Be sure to check out our guide.
We do often include affiliate links to earn us some pennies. See more here.
VK9, formerly known as 'SchaeferGL' is an open source project that aims to implement d3d9 over Vulkan.

Explanation video:
YouTube Thumbnail
YouTube videos require cookies, you must accept their cookies to view. View cookie preferences.
Accept Cookies & Show   Direct Link

The creator of the project emailed us to let us know about it and it does sound quite interesting. I'm not sure how useful it will end up being, but projects like Wine could benefit from it if it manages to get good compatibility.

You can find it on github here. Read more about the aims and more on this page.

The developer has also been writing a blog about the progress. You can see the roadmap here of what the developer hopes to get done and when. Article taken from GamingOnLinux.com.
6 Likes
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly came back to check on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly. Find me on Mastodon.
See more from me
The comments on this article are closed.
11 comments
Page: «2/2
  Go to:

STiAT Nov 29, 2016
Quoting: MyeulC
Quoting: STiATHmh, I don't really get the point in the project except if it is for academic purpose (which is perfectly fine, don't get me wrong there!). Providing a d3d9->vulkan mapping for systems which ship with d3d9? In the end, 2020 we'll rather see Vulkan/DX12 things popping out than having D3D9 or even 11 being used, since most engines will be there by then.

But yet, for Wine which already does all this (basically, providing a WINAPI, HRESULT, IDirect3D9* stuff and windows event handler / STDMETHODCALLTYPE etc.), it may be a good starting point if they wanted to do a d3d9 to vulkan mapping.
Let me disagree with your last point. To concentrate on this translation layer, I believe it is just easier to work on... Windows, which already supports both APIs, and as such, is just one DLL remplacement away, not involving wine.

That's interesting, but I wonder if there isn't reusable things in gallium nine, which does the same, albeit a bit higher level.
It also has its use cases where G9 isn't available, too.

It does not just source one DLL. It sources a lot of Windows native DLLs by sourcing windows.h. Anyway, it uses the MEAN_AND_LEAN macro, so you probably could provide this functionality as well. But that's basically a smaller port of Wines WinAPI implementation, but ye - it could be included into projects natively. But that's a chunk of work.
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.