-
Notifications
You must be signed in to change notification settings - Fork 180
Cube demo replace use of VK_MVK_macos_surface & VK_MVK_ios_surface extensions with VK_EXT_metal_surface extension. #220
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
Conversation
|
Per the request on my related VulkanSamples PR, I've squashed the commits here into one. |
TonyBarbour
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. @jeremyk-lunarg does it pass your testing?
|
Ping. Can I get this merged so that I can update MoltenVK to use it? |
|
Getting the following error when building on my Mac Laptop: |
|
What version of MoltenVK are you using? There is a coordination component here...in that the cube demo is being modified to use a different surface extension...which is only supported in MoltenVK repository as of July 3. The MoltenVK in the last SDK won't work. |
|
@billhollings Getting the following error during build still: |
|
Might be best if you update the known_good.json with the MoltenVK commit that works for you and add that change to this PR as well. |
|
The MoltenVK commit that you specified compiles against MoltenVK in the MoltenVK cube demo, which builds against MoltenVK directly. Does the build process in Vulkan-Tools build against MoltenVK directly, or the Loader? And does the Loader support |
|
Vulkan-Tools builds against the Loader. @lenny-lunarg, you would probably be able to answer @billhollings question better than I could. |
extensions with VK_EXT_metal_surface extension. Make cube demo DemoViewController.m compatible with VK_EXT_metal_surface extension. Update version of MoltenVK in scripts/known_good.json. Run clang-format.
|
The loader does not currently support the I can add loader support for this extension, but I probably can't get around to that until the end of the week. On top of that, you may need to make changes to moltenvk to make them work together nicely. A driver needs to implement version 3 of the interface for the loader to allow it to implement the create surface functions. Of course, since I don't have easy access to a machine running macOS, I might need some help to get this loader change up and running. |
|
Thanks, @lenny-lunarg . As I understand the Loader versioning, MoltenVK already supports version 5: ...and it certainly has always supported the other surface extensions: But let me know if there is anything else we can add to MoltenVK to help with this. And I'm happy to help with testing on macOS if you need. |
|
Just a note.... On macOS, the Cube demo should be run with the |
|
@billhollings, now that we have support for the metal surface in the loader, this can probably be retested and merged after you update it with resolutions for the conflicts. |
|
Because this PR is so far behind, I cherry-picked the commit onto a new branch and created a new PR. Please refer to PR #297 for future discussion on this change. |
MoltenVK now supports the VK_EXT_metal_surface extension. This PR modifies the cube demo to use that extension to create the surface, instead of the obsolete VK_MVK_macos_surface & VK_MVK_ios_surface extensions.