Cube demo replace use of VK_MVK_macos_surface & VK_MVK_ios_surface extensions with VK_EXT_metal_surface extension.#220
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.
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.