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

Feature request : add DispatchMeshIndirect & DispatchRaysIndirect support #7

Open
THISISAGOODNAME opened this issue Mar 27, 2021 · 6 comments

Comments

@THISISAGOODNAME
Copy link
Contributor

Or more universal api like dx12 ExecuteIndirect .

:)

@andrejnau
Copy link
Owner

andrejnau commented Mar 27, 2021

I thought about ExecuteIndirect, but unfortunately Vulkan does not have such api. VK_NV_device_generated_commands can be the equivalent of ExecuteIndirect, but it is not a final version yet, for example there is no DispatchRaysIndirect. I prefer to wait for KHR version.

@andrejnau
Copy link
Owner

Another limitation is that Vulkan do not provide count version for all indirect calls. It does not allow emulating subset of ExecuteIndirect.

@andrejnau
Copy link
Owner

andrejnau commented Mar 27, 2021

Anyway, thank you for your feature request. I will add DispatchMeshIndirect/DispatchRaysIndirect support.

@andrejnau
Copy link
Owner

DirectX 12 and Vulkan have different memory layout for arguments. D3D12_DISPATCH_MESH_ARGUMENTS vs VkDrawMeshTasksIndirectCommandNV and D3D12_DISPATCH_RAYS_DESC vs VkTraceRaysIndirectCommandKHR. It will require arguments patch on the gpu side.
Sorry, I want to postpone this feature request until there is a way to do it without arguments buffer patching.

@andrejnau
Copy link
Owner

I created KhronosGroup/Vulkan-Docs#1486 I hope it affects something.

@THISISAGOODNAME
Copy link
Contributor Author

DirectX 12 and Vulkan have different memory layout for arguments. D3D12_DISPATCH_MESH_ARGUMENTS vs VkDrawMeshTasksIndirectCommandNV and D3D12_DISPATCH_RAYS_DESC vs VkTraceRaysIndirectCommandKHR. It will require arguments patch on the gpu side.
Sorry, I want to postpone this feature request until there is a way to do it without arguments buffer patching.

Thank you anyway.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants