Think about vulkan needs of normalized parameter, with opengl in context, and try to abstract accordingly. Also may need to think about the custom default offsets
This just fattens the KarmaBackendRendererUserData with disregard to I (Interface seggregation principle) of SOLID principles. Try using polymorphism by wormbo's "other way round" phrase and making OpenGL3_Data and Vulkan_Data child classes of KarmaGuiBackendRendererUserData.
KarmaGuiOpenGLHandler seems to be not doing the right form of cleaning of resources because Renderer_Destroy_Window is not set like that in KarmaGuiVulkanHandler. Try to find a way.