Skip to content

VkSurfaceKHR

OS の Window システムに依存して作成する。

dependencies

Vulkan

  • VkInstance Instance

android

  • VK_KHR_android_surface
  • ANativeWindow *window

windows

  • VK_KHR_win32_surface
  • HINSTANCE
  • HWND

glfw

glfwGetRequiredInstanceExtensions

code

android 例

cpp
  ANativeWindow *window;

  VkAndroidSurfaceCreateInfoKHR info = {
      .sType = VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR,
      .pNext = 0,
      .flags = 0,
      .window = window,
  };
  if (vkCreateAndroidSurfaceKHR(Instance, &info, nullptr, &Surface) !=
      VK_SUCCESS) {
    LOGE("vkCreateAndroidSurfaceKHR");
    return false;
  }

  // ~~~

  vkDestroySurfaceKHR(Instance, Surface, nullptr);