Wine Vulkan ICD repository
Sebastian Lackner
sebastian at fds-team.de
Fri Nov 17 07:09:14 CST 2017
On 17.11.2017 09:38, Roderick Colenbrander wrote:
> Hi all,
>
> I have created a temporary Wine fork containing my Vulkan ICD work at:
> https://github.com/roderickc/wine-vulkan
>
> The repo is meant to show the current design without having to spam
> wine-devel with a ton of patches. I rebased all my code and split it
> up well. There are a few hacky patches like x11 window support just
> for me to get some actual applications to work to test the ICD design.
>
> The last 3 or so patches contain a proof-of-concept for some of the
> 32-bit struct handling support. I have 32-bit support mostly working,
> but it required some changes to my script which I need to cleanup
> before I share it. Obviously the 32-bit work will be rebased across
> earlier patches in the series.
I find it a bit difficult to check how well 32-bit support is working
when there is just an example for a single wrapper function. Are you aware
that some functions also take arrays of structs as parameters, or have
arrays embedded in other structs?
For a function which takes an array of VkSwapchainCreateInfoKHR structs,
please take a look at vkCreateSharedSwapchainsKHR.
For a struct which contains an embedded array that has to be converted,
take a look at VkGraphicsPipelineCreateInfo (pStages array) or
VkSparseBufferMemoryBindInfo (pBinds array).
Obviously, you also want to avoid the conversion overhead when the
host and windows struct matches. Is that also implemented?
>
> The patches also include the Vulkan generation script I wrote. Parsing
> Vulkan is quite a pain due to all the structures and its object
> design. For this reason my parser is quite stateful, which made it
> more work to write, but now it is easy to generate code and do awful
> things like the 32-bit generation.
>
> Feel free to play around with the code. I added some instructions to
> the project. Currently 64-bit applications such as cube.exe,
> vulkaninfo.exe and vkquake.exe are known to work. 32-bit support is in
> progress, vulkaninfo.exe kind of works, but anything needing structure
> conversion will currently fail.
>
> Let me know your thoughts.
>
> Thanks,
> Roderick
>
>
More information about the wine-devel
mailing list