sdl_vulkan.odin 823 B

1234567891011121314151617181920212223242526
  1. package sdl2
  2. import "core:c"
  3. import vk "vendor:vulkan"
  4. when ODIN_OS == .Windows {
  5. foreign import lib "SDL2.lib"
  6. } else {
  7. foreign import lib "system:SDL2"
  8. }
  9. VkInstance :: vk.Instance
  10. VkSurfaceKHR :: vk.SurfaceKHR
  11. vulkanInstance :: VkInstance
  12. vulkanSurface :: VkSurfaceKHR
  13. @(default_calling_convention="c", link_prefix="SDL_")
  14. foreign lib {
  15. Vulkan_LoadLibrary :: proc(path: cstring) -> c.int ---
  16. Vulkan_GetVkGetInstanceProcAddr :: proc() -> rawptr ---
  17. Vulkan_UnloadLibrary :: proc() ---
  18. Vulkan_GetInstanceExtensions :: proc(window: ^Window, pCount: ^c.uint, pNames: [^]cstring) -> bool ---
  19. Vulkan_CreateSurface :: proc(window: ^Window, instance: VkInstance, surface: ^VkSurfaceKHR) -> bool ---
  20. Vulkan_GetDrawableSize :: proc(window: ^Window, w, h: ^c.int) ---
  21. }