optick icon indicating copy to clipboard operation
optick copied to clipboard

Support for Vulkan Meta-loaders like volk?

Open Honeybunch opened this issue 5 years ago • 1 comments

Just double checking. I don't see it anywhere in the current API but is there currently a mechanism for supporting vulkan meta-loaders? I use volk in a few projects and it's really great. However it seems like Optick has no way to supply custom-loaded vulkan function pointers.

The GPUOpen VMA supports this by allowing the user to provide a struct of function pointers when initializing the allocator. Some functionality like this in OPTICK_GPU_INIT_VULKAN would be really great. Am I missing somewhere where this is implemented or is this planned? If not I'd be willing to take a stab at it.

Honeybunch avatar Jul 18 '20 21:07 Honeybunch

I think it should be implemented as

typedef void(*fn_ptr)();
fn_ptr getProcAddress( void *context, const char *name );

It would hide function definitions in headers and allow for extending number of used functions without breaking API. Furthermore it mirrors how Vulkan itself does things. I don't know if making this breaking change would be worth the gain.

qbojj avatar Dec 21 '22 13:12 qbojj