Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: Vulkan Instance Builder #471

Conversation

TomAtkinsonArm
Copy link
Contributor

Description

Adds an instance builder to allow a sample to completely customize how a vulkan instance is constructed.

Also adds a vulkan test framework so that we can intercept vulkan calls and make sure that our API usage is as expected. I've never been able to do Vulkan TDD before but I think this solution makes it viable. It works by overriding global volk PFN_vkFunction declarations so that we can intercept vulkan calls and validate our actual vulkan usage.

This method of testing will never replace OOB testing against an actual driver. But at least with good test coverage we can confidently say that a specific Vulkan component should work as expected against the Vulkan specification.

fixes #466

@TomAtkinsonArm TomAtkinsonArm added the framework This is relevant to the framework label Jun 1, 2022
@TomAtkinsonArm TomAtkinsonArm self-assigned this Jun 1, 2022
@TomAtkinsonArm TomAtkinsonArm linked an issue Jun 1, 2022 that may be closed by this pull request
@TomAtkinsonArm
Copy link
Contributor Author

@gpx1000 thoughts on the Vulkan unit tests here?

@TomAtkinsonArm TomAtkinsonArm changed the title WIP: Vulkan Instance Builder Vulkan Instance Builder Jun 4, 2022
@TomAtkinsonArm TomAtkinsonArm changed the title Vulkan Instance Builder WIP: Vulkan Instance Builder Jun 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
framework This is relevant to the framework
Projects
None yet
Development

Successfully merging this pull request may close these issues.

FI: Vulkan Instance
2 participants