diff options
| author | Mark Lobodzinski <mark@lunarg.com> | 2018-04-11 13:38:11 -0600 |
|---|---|---|
| committer | Mark Lobodzinski <mark@lunarg.com> | 2018-05-11 20:10:23 -0600 |
| commit | 6e590c31d0ceaf3edc717d4e79aacc9afed46f5c (patch) | |
| tree | ff9cc5efbb622567d2f1bb823e0a5eb179fdc2e3 | |
| parent | b37d3d8477db4ea1dc7ae25539b35a0e8e365a7f (diff) | |
| download | usermoji-6e590c31d0ceaf3edc717d4e79aacc9afed46f5c.tar.xz | |
cube: Move cube directory up to top level dir
Change-Id: Ie1116b0b6de742b4f85834a4c9d1927dd641e19b
| -rw-r--r-- | CMakeLists.txt | 41 | ||||
| -rw-r--r-- | common/android_util.cpp | 84 | ||||
| -rw-r--r-- | common/android_util.h | 32 | ||||
| -rw-r--r-- | common/vulkan_wrapper.cpp | 446 | ||||
| -rw-r--r-- | common/vulkan_wrapper.h | 239 | ||||
| -rw-r--r-- | cube/CMakeLists.txt (renamed from demos/CMakeLists.txt) | 107 | ||||
| -rw-r--r-- | cube/android/cube-with-layers/AndroidManifest.xml (renamed from demos/android/cube-with-layers/AndroidManifest.xml) | 0 | ||||
| -rw-r--r-- | cube/android/cube-with-layers/custom_rules.xml (renamed from demos/android/cube-with-layers/custom_rules.xml) | 0 | ||||
| -rw-r--r-- | cube/android/cube-with-layers/res/values/strings.xml (renamed from demos/android/cube-with-layers/res/values/strings.xml) | 0 | ||||
| -rw-r--r-- | cube/android/cube/AndroidManifest.xml (renamed from demos/android/cube/AndroidManifest.xml) | 0 | ||||
| -rw-r--r-- | cube/android/cube/custom_rules.xml (renamed from demos/android/cube/custom_rules.xml) | 0 | ||||
| -rw-r--r-- | cube/android/cube/res/values/strings.xml (renamed from demos/android/cube/res/values/strings.xml) | 0 | ||||
| -rw-r--r-- | cube/android/include/cube.frag.h (renamed from demos/android/include/cube.frag.h) | 0 | ||||
| -rw-r--r-- | cube/android/include/cube.frag.inc (renamed from demos/android/include/cube.frag.inc) | 0 | ||||
| -rw-r--r-- | cube/android/include/cube.vert.h (renamed from demos/android/include/cube.vert.h) | 0 | ||||
| -rw-r--r-- | cube/android/include/cube.vert.inc (renamed from demos/android/include/cube.vert.inc) | 0 | ||||
| -rw-r--r-- | cube/android/include/lunarg.ppm.h (renamed from demos/android/include/lunarg.ppm.h) | 0 | ||||
| -rw-r--r-- | cube/android/jni/Android.mk (renamed from demos/android/jni/Android.mk) | 0 | ||||
| -rw-r--r-- | cube/android/jni/Application.mk (renamed from demos/android/jni/Application.mk) | 0 | ||||
| -rw-r--r-- | cube/cube.c (renamed from demos/cube.c) | 0 | ||||
| -rw-r--r-- | cube/cube.cpp (renamed from demos/cube.cpp) | 0 | ||||
| -rw-r--r-- | cube/cube.frag (renamed from demos/cube.frag) | 0 | ||||
| -rwxr-xr-x | cube/cube.vcxproj.user (renamed from demos/cube.vcxproj.user) | 0 | ||||
| -rw-r--r-- | cube/cube.vert (renamed from demos/cube.vert) | 0 | ||||
| -rw-r--r-- | cube/gettime.h (renamed from demos/gettime.h) | 0 | ||||
| -rw-r--r-- | cube/linmath.h (renamed from demos/linmath.h) | 0 | ||||
| -rw-r--r-- | cube/lunarg.ppm (renamed from demos/lunarg.ppm) | 0 | ||||
| -rw-r--r-- | cube/macOS/common.cmake (renamed from demos/macOS/common.cmake) | 0 | ||||
| -rw-r--r-- | cube/macOS/cube/AppDelegate.h (renamed from demos/macOS/cube/AppDelegate.h) | 0 | ||||
| -rw-r--r-- | cube/macOS/cube/AppDelegate.m (renamed from demos/macOS/cube/AppDelegate.m) | 0 | ||||
| -rw-r--r-- | cube/macOS/cube/DemoViewController.h (renamed from demos/macOS/cube/DemoViewController.h) | 0 | ||||
| -rw-r--r-- | cube/macOS/cube/DemoViewController.m (renamed from demos/macOS/cube/DemoViewController.m) | 0 | ||||
| -rw-r--r-- | cube/macOS/cube/Info.plist (renamed from demos/macOS/cube/Info.plist) | 0 | ||||
| -rw-r--r-- | cube/macOS/cube/Resources/LunarGIcon.icns (renamed from demos/macOS/cube/Resources/LunarGIcon.icns) | bin | 54120 -> 54120 bytes | |||
| -rw-r--r-- | cube/macOS/cube/Resources/Main.storyboard (renamed from demos/macOS/cube/Resources/Main.storyboard) | 0 | ||||
| -rw-r--r-- | cube/macOS/cube/cube.cmake (renamed from demos/macOS/cube/cube.cmake) | 0 | ||||
| -rw-r--r-- | cube/macOS/cube/main.m (renamed from demos/macOS/cube/main.m) | 0 | ||||
| -rw-r--r-- | cube/macOS/cubepp/AppDelegate.h (renamed from demos/macOS/cubepp/AppDelegate.h) | 0 | ||||
| -rw-r--r-- | cube/macOS/cubepp/AppDelegate.mm (renamed from demos/macOS/cubepp/AppDelegate.mm) | 0 | ||||
| -rw-r--r-- | cube/macOS/cubepp/DemoViewController.h (renamed from demos/macOS/cubepp/DemoViewController.h) | 0 | ||||
| -rw-r--r-- | cube/macOS/cubepp/DemoViewController.mm (renamed from demos/macOS/cubepp/DemoViewController.mm) | 0 | ||||
| -rw-r--r-- | cube/macOS/cubepp/Info.plist (renamed from demos/macOS/cubepp/Info.plist) | 0 | ||||
| -rw-r--r-- | cube/macOS/cubepp/Resources/LunarGIcon.icns (renamed from demos/macOS/cubepp/Resources/LunarGIcon.icns) | bin | 54120 -> 54120 bytes | |||
| -rw-r--r-- | cube/macOS/cubepp/Resources/Main.storyboard (renamed from demos/macOS/cubepp/Resources/Main.storyboard) | 0 | ||||
| -rw-r--r-- | cube/macOS/cubepp/cubepp.cmake (renamed from demos/macOS/cubepp/cubepp.cmake) | 0 | ||||
| -rw-r--r-- | cube/macOS/cubepp/main.mm (renamed from demos/macOS/cubepp/main.mm) | 0 | ||||
| -rw-r--r-- | cube/object_type_string_helper.h (renamed from demos/object_type_string_helper.h) | 0 | ||||
| -rw-r--r-- | vulkaninfo/macOS/Info.plist (renamed from demos/macOS/vulkaninfo/Info.plist) | 0 | ||||
| -rw-r--r-- | vulkaninfo/macOS/Resources/LunarGIcon.icns (renamed from demos/macOS/vulkaninfo/Resources/LunarGIcon.icns) | bin | 54120 -> 54120 bytes | |||
| -rw-r--r-- | vulkaninfo/macOS/vulkaninfo.cmake (renamed from demos/macOS/vulkaninfo/vulkaninfo.cmake) | 0 | ||||
| -rwxr-xr-x | vulkaninfo/macOS/vulkaninfo.sh (renamed from demos/macOS/vulkaninfo/vulkaninfo.sh) | 0 |
51 files changed, 71 insertions, 878 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index c13c0992..97486d6a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -46,40 +46,7 @@ endif() set_property(GLOBAL PROPERTY USE_FOLDERS ON) set(LVL_TARGET_FOLDER lvl_cmake_targets) -if(CMAKE_SYSTEM_NAME STREQUAL "Linux" OR CMAKE_SYSTEM_NAME STREQUAL "Darwin") - set(FALLBACK_CONFIG_DIRS "/etc/xdg" CACHE STRING - "Search path to use when XDG_CONFIG_DIRS is unset or empty or the current process is SUID/SGID. Default is freedesktop compliant.") - set(FALLBACK_DATA_DIRS "/usr/local/share:/usr/share" CACHE STRING - "Search path to use when XDG_DATA_DIRS is unset or empty or the current process is SUID/SGID. Default is freedesktop compliant.") -endif() - -if(CMAKE_SYSTEM_NAME STREQUAL "Linux") - include(FindPkgConfig) - option(BUILD_WSI_XCB_SUPPORT "Build XCB WSI support" ON) - option(BUILD_WSI_XLIB_SUPPORT "Build Xlib WSI support" ON) - option(BUILD_WSI_WAYLAND_SUPPORT "Build Wayland WSI support" ON) - option(BUILD_WSI_MIR_SUPPORT "Build Mir WSI support" OFF) - set(DEMOS_WSI_SELECTION "XCB" CACHE STRING "Select WSI target for demos (XCB, XLIB, WAYLAND, MIR, DISPLAY)") - - if (BUILD_WSI_XCB_SUPPORT) - find_package(XCB REQUIRED) - endif() - - if (BUILD_WSI_XLIB_SUPPORT) - find_package(X11 REQUIRED) - endif() - - if (BUILD_WSI_WAYLAND_SUPPORT) - find_package(Wayland REQUIRED) - include_directories(${WAYLAND_CLIENT_INCLUDE_DIR}) - endif() - - if (BUILD_WSI_MIR_SUPPORT) - find_package(Mir REQUIRED) - endif() - -endif() - +# Move to ICD set(SCRIPTS_DIR "${CMAKE_CURRENT_SOURCE_DIR}/scripts") # Header file for CMake settings @@ -151,7 +118,7 @@ else() endif() endif() -option(BUILD_DEMOS "Build demos" ON) +option(BUILD_CUBE "Build cube" ON) option(BUILD_VULKANINFO "Build vulkaninfo" ON) option(BUILD_ICD "Build icd" ON) @@ -192,8 +159,8 @@ endif() add_definitions(-DAPI_NAME="${API_NAME}") -if(BUILD_DEMOS) - add_subdirectory(demos) +if(BUILD_CUBE) + add_subdirectory(cube) endif() if(BUILD_VULKANINFO) add_subdirectory(vulkaninfo) diff --git a/common/android_util.cpp b/common/android_util.cpp deleted file mode 100644 index 173e8ab8..00000000 --- a/common/android_util.cpp +++ /dev/null @@ -1,84 +0,0 @@ -/* - * Copyright (c) 2016 Google, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * Relicensed from the WTFPL (http://www.wtfpl.net/faq/). - */ - -#include "android_util.h" -#include <android_native_app_glue.h> -#include <cassert> -#include <cstring> -#include <vector> -#include <string> -#include <sstream> -#include <stdlib.h> - -extern "C" { - -// Convert Intents to arg list, returning argc and argv -// Note that this C routine mallocs memory that the caller must free -char **get_args(struct android_app *app, const char *intent_extra_data_key, const char *appTag, int *count) { - std::vector<std::string> args; - JavaVM &vm = *app->activity->vm; - JNIEnv *p_env; - if (vm.AttachCurrentThread(&p_env, nullptr) != JNI_OK) return nullptr; - - JNIEnv &env = *p_env; - jobject activity = app->activity->clazz; - jmethodID get_intent_method = env.GetMethodID(env.GetObjectClass(activity), "getIntent", "()Landroid/content/Intent;"); - jobject intent = env.CallObjectMethod(activity, get_intent_method); - jmethodID get_string_extra_method = - env.GetMethodID(env.GetObjectClass(intent), "getStringExtra", "(Ljava/lang/String;)Ljava/lang/String;"); - jvalue get_string_extra_args; - get_string_extra_args.l = env.NewStringUTF(intent_extra_data_key); - jstring extra_str = static_cast<jstring>(env.CallObjectMethodA(intent, get_string_extra_method, &get_string_extra_args)); - - std::string args_str; - if (extra_str) { - const char *extra_utf = env.GetStringUTFChars(extra_str, nullptr); - args_str = extra_utf; - env.ReleaseStringUTFChars(extra_str, extra_utf); - env.DeleteLocalRef(extra_str); - } - - env.DeleteLocalRef(get_string_extra_args.l); - env.DeleteLocalRef(intent); - vm.DetachCurrentThread(); - - // split args_str - std::stringstream ss(args_str); - std::string arg; - while (std::getline(ss, arg, ' ')) { - if (!arg.empty()) args.push_back(arg); - } - - // Convert our STL results to C friendly constructs - assert(count != nullptr); - *count = args.size() + 1; - char **vector = (char **)malloc(*count * sizeof(char *)); - const char *appName = appTag ? appTag : (const char *)"appTag"; - - vector[0] = (char *)malloc(strlen(appName) * sizeof(char)); - strcpy(vector[0], appName); - - for (uint32_t i = 0; i < args.size(); i++) { - vector[i + 1] = (char *)malloc(strlen(args[i].c_str()) * sizeof(char)); - strcpy(vector[i + 1], args[i].c_str()); - } - - return vector; -} - -} // extern "C" diff --git a/common/android_util.h b/common/android_util.h deleted file mode 100644 index e8966458..00000000 --- a/common/android_util.h +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (c) 2016 Google, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * Relicensed from the WTFPL (http://www.wtfpl.net/faq/). - */ - -#ifndef ANDROID_UTIL_H -#define ANDROID_UTIL_H - -#ifdef __cplusplus -extern "C" { -#endif - -char **get_args(struct android_app *app, const char *intent_extra_data_key, const char *appTag, int *count); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/common/vulkan_wrapper.cpp b/common/vulkan_wrapper.cpp deleted file mode 100644 index b51290ce..00000000 --- a/common/vulkan_wrapper.cpp +++ /dev/null @@ -1,446 +0,0 @@ -/* - * Copyright 2016 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -// This file is generated. -#ifdef __cplusplus -extern "C" { -#endif - -#include "vulkan_wrapper.h" -#include <dlfcn.h> - -int InitVulkan(void) { - void *libvulkan = dlopen("libvulkan.so", RTLD_NOW | RTLD_LOCAL); - if (!libvulkan) return 0; - - // Vulkan supported, set function addresses - vkCreateInstance = reinterpret_cast<PFN_vkCreateInstance>(dlsym(libvulkan, "vkCreateInstance")); - vkDestroyInstance = reinterpret_cast<PFN_vkDestroyInstance>(dlsym(libvulkan, "vkDestroyInstance")); - vkEnumeratePhysicalDevices = reinterpret_cast<PFN_vkEnumeratePhysicalDevices>(dlsym(libvulkan, "vkEnumeratePhysicalDevices")); - vkGetPhysicalDeviceFeatures = - reinterpret_cast<PFN_vkGetPhysicalDeviceFeatures>(dlsym(libvulkan, "vkGetPhysicalDeviceFeatures")); - vkGetPhysicalDeviceFeatures2 = - reinterpret_cast<PFN_vkGetPhysicalDeviceFeatures2>(dlsym(libvulkan, "vkGetPhysicalDeviceFeatures2")); - vkGetPhysicalDeviceFormatProperties = - reinterpret_cast<PFN_vkGetPhysicalDeviceFormatProperties>(dlsym(libvulkan, "vkGetPhysicalDeviceFormatProperties")); - vkGetPhysicalDeviceImageFormatProperties = reinterpret_cast<PFN_vkGetPhysicalDeviceImageFormatProperties>( - dlsym(libvulkan, "vkGetPhysicalDeviceImageFormatProperties")); - vkGetPhysicalDeviceProperties = - reinterpret_cast<PFN_vkGetPhysicalDeviceProperties>(dlsym(libvulkan, "vkGetPhysicalDeviceProperties")); - vkGetPhysicalDeviceQueueFamilyProperties = reinterpret_cast<PFN_vkGetPhysicalDeviceQueueFamilyProperties>( - dlsym(libvulkan, "vkGetPhysicalDeviceQueueFamilyProperties")); - vkGetPhysicalDeviceMemoryProperties = - reinterpret_cast<PFN_vkGetPhysicalDeviceMemoryProperties>(dlsym(libvulkan, "vkGetPhysicalDeviceMemoryProperties")); - vkGetInstanceProcAddr = reinterpret_cast<PFN_vkGetInstanceProcAddr>(dlsym(libvulkan, "vkGetInstanceProcAddr")); - vkGetDeviceProcAddr = reinterpret_cast<PFN_vkGetDeviceProcAddr>(dlsym(libvulkan, "vkGetDeviceProcAddr")); - vkCreateDevice = reinterpret_cast<PFN_vkCreateDevice>(dlsym(libvulkan, "vkCreateDevice")); - vkDestroyDevice = reinterpret_cast<PFN_vkDestroyDevice>(dlsym(libvulkan, "vkDestroyDevice")); - vkEnumerateInstanceExtensionProperties = - reinterpret_cast<PFN_vkEnumerateInstanceExtensionProperties>(dlsym(libvulkan, "vkEnumerateInstanceExtensionProperties")); - vkEnumerateDeviceExtensionProperties = - reinterpret_cast<PFN_vkEnumerateDeviceExtensionProperties>(dlsym(libvulkan, "vkEnumerateDeviceExtensionProperties")); - vkEnumerateInstanceLayerProperties = - reinterpret_cast<PFN_vkEnumerateInstanceLayerProperties>(dlsym(libvulkan, "vkEnumerateInstanceLayerProperties")); - vkEnumerateDeviceLayerProperties = - reinterpret_cast<PFN_vkEnumerateDeviceLayerProperties>(dlsym(libvulkan, "vkEnumerateDeviceLayerProperties")); - vkGetDeviceQueue = reinterpret_cast<PFN_vkGetDeviceQueue>(dlsym(libvulkan, "vkGetDeviceQueue")); - vkQueueSubmit = reinterpret_cast<PFN_vkQueueSubmit>(dlsym(libvulkan, "vkQueueSubmit")); - vkQueueWaitIdle = reinterpret_cast<PFN_vkQueueWaitIdle>(dlsym(libvulkan, "vkQueueWaitIdle")); - vkDeviceWaitIdle = reinterpret_cast<PFN_vkDeviceWaitIdle>(dlsym(libvulkan, "vkDeviceWaitIdle")); - vkAllocateMemory = reinterpret_cast<PFN_vkAllocateMemory>(dlsym(libvulkan, "vkAllocateMemory")); - vkFreeMemory = reinterpret_cast<PFN_vkFreeMemory>(dlsym(libvulkan, "vkFreeMemory")); - vkMapMemory = reinterpret_cast<PFN_vkMapMemory>(dlsym(libvulkan, "vkMapMemory")); - vkUnmapMemory = reinterpret_cast<PFN_vkUnmapMemory>(dlsym(libvulkan, "vkUnmapMemory")); - vkFlushMappedMemoryRanges = reinterpret_cast<PFN_vkFlushMappedMemoryRanges>(dlsym(libvulkan, "vkFlushMappedMemoryRanges")); - vkInvalidateMappedMemoryRanges = - reinterpret_cast<PFN_vkInvalidateMappedMemoryRanges>(dlsym(libvulkan, "vkInvalidateMappedMemoryRanges")); - vkGetDeviceMemoryCommitment = - reinterpret_cast<PFN_vkGetDeviceMemoryCommitment>(dlsym(libvulkan, "vkGetDeviceMemoryCommitment")); - vkBindBufferMemory = reinterpret_cast<PFN_vkBindBufferMemory>(dlsym(libvulkan, "vkBindBufferMemory")); - vkBindImageMemory = reinterpret_cast<PFN_vkBindImageMemory>(dlsym(libvulkan, "vkBindImageMemory")); - vkGetBufferMemoryRequirements = - reinterpret_cast<PFN_vkGetBufferMemoryRequirements>(dlsym(libvulkan, "vkGetBufferMemoryRequirements")); - vkGetImageMemoryRequirements = - reinterpret_cast<PFN_vkGetImageMemoryRequirements>(dlsym(libvulkan, "vkGetImageMemoryRequirements")); - vkGetImageSparseMemoryRequirements = - reinterpret_cast<PFN_vkGetImageSparseMemoryRequirements>(dlsym(libvulkan, "vkGetImageSparseMemoryRequirements")); - vkGetPhysicalDeviceSparseImageFormatProperties = reinterpret_cast<PFN_vkGetPhysicalDeviceSparseImageFormatProperties>( - dlsym(libvulkan, "vkGetPhysicalDeviceSparseImageFormatProperties")); - vkQueueBindSparse = reinterpret_cast<PFN_vkQueueBindSparse>(dlsym(libvulkan, "vkQueueBindSparse")); - vkCreateFence = reinterpret_cast<PFN_vkCreateFence>(dlsym(libvulkan, "vkCreateFence")); - vkDestroyFence = reinterpret_cast<PFN_vkDestroyFence>(dlsym(libvulkan, "vkDestroyFence")); - vkResetFences = reinterpret_cast<PFN_vkResetFences>(dlsym(libvulkan, "vkResetFences")); - vkGetFenceStatus = reinterpret_cast<PFN_vkGetFenceStatus>(dlsym(libvulkan, "vkGetFenceStatus")); - vkWaitForFences = reinterpret_cast<PFN_vkWaitForFences>(dlsym(libvulkan, "vkWaitForFences")); - vkCreateSemaphore = reinterpret_cast<PFN_vkCreateSemaphore>(dlsym(libvulkan, "vkCreateSemaphore")); - vkDestroySemaphore = reinterpret_cast<PFN_vkDestroySemaphore>(dlsym(libvulkan, "vkDestroySemaphore")); - vkCreateEvent = reinterpret_cast<PFN_vkCreateEvent>(dlsym(libvulkan, "vkCreateEvent")); - vkDestroyEvent = reinterpret_cast<PFN_vkDestroyEvent>(dlsym(libvulkan, "vkDestroyEvent")); - vkGetEventStatus = reinterpret_cast<PFN_vkGetEventStatus>(dlsym(libvulkan, "vkGetEventStatus")); - vkSetEvent = reinterpret_cast<PFN_vkSetEvent>(dlsym(libvulkan, "vkSetEvent")); - vkResetEvent = reinterpret_cast<PFN_vkResetEvent>(dlsym(libvulkan, "vkResetEvent")); - vkCreateQueryPool = reinterpret_cast<PFN_vkCreateQueryPool>(dlsym(libvulkan, "vkCreateQueryPool")); - vkDestroyQueryPool = reinterpret_cast<PFN_vkDestroyQueryPool>(dlsym(libvulkan, "vkDestroyQueryPool")); - vkGetQueryPoolResults = reinterpret_cast<PFN_vkGetQueryPoolResults>(dlsym(libvulkan, "vkGetQueryPoolResults")); - vkCreateBuffer = reinterpret_cast<PFN_vkCreateBuffer>(dlsym(libvulkan, "vkCreateBuffer")); - vkDestroyBuffer = reinterpret_cast<PFN_vkDestroyBuffer>(dlsym(libvulkan, "vkDestroyBuffer")); - vkCreateBufferView = reinterpret_cast<PFN_vkCreateBufferView>(dlsym(libvulkan, "vkCreateBufferView")); - vkDestroyBufferView = reinterpret_cast<PFN_vkDestroyBufferView>(dlsym(libvulkan, "vkDestroyBufferView")); - vkCreateImage = reinterpret_cast<PFN_vkCreateImage>(dlsym(libvulkan, "vkCreateImage")); - vkDestroyImage = reinterpret_cast<PFN_vkDestroyImage>(dlsym(libvulkan, "vkDestroyImage")); - vkGetImageSubresourceLayout = - reinterpret_cast<PFN_vkGetImageSubresourceLayout>(dlsym(libvulkan, "vkGetImageSubresourceLayout")); - vkCreateImageView = reinterpret_cast<PFN_vkCreateImageView>(dlsym(libvulkan, "vkCreateImageView")); - vkDestroyImageView = reinterpret_cast<PFN_vkDestroyImageView>(dlsym(libvulkan, "vkDestroyImageView")); - vkCreateShaderModule = reinterpret_cast<PFN_vkCreateShaderModule>(dlsym(libvulkan, "vkCreateShaderModule")); - vkDestroyShaderModule = reinterpret_cast<PFN_vkDestroyShaderModule>(dlsym(libvulkan, "vkDestroyShaderModule")); - vkCreatePipelineCache = reinterpret_cast<PFN_vkCreatePipelineCache>(dlsym(libvulkan, "vkCreatePipelineCache")); - vkDestroyPipelineCache = reinterpret_cast<PFN_vkDestroyPipelineCache>(dlsym(libvulkan, "vkDestroyPipelineCache")); - vkGetPipelineCacheData = reinterpret_cast<PFN_vkGetPipelineCacheData>(dlsym(libvulkan, "vkGetPipelineCacheData")); - vkMergePipelineCaches = reinterpret_cast<PFN_vkMergePipelineCaches>(dlsym(libvulkan, "vkMergePipelineCaches")); - vkCreateGraphicsPipelines = reinterpret_cast<PFN_vkCreateGraphicsPipelines>(dlsym(libvulkan, "vkCreateGraphicsPipelines")); - vkCreateComputePipelines = reinterpret_cast<PFN_vkCreateComputePipelines>(dlsym(libvulkan, "vkCreateComputePipelines")); - vkDestroyPipeline = reinterpret_cast<PFN_vkDestroyPipeline>(dlsym(libvulkan, "vkDestroyPipeline")); - vkCreatePipelineLayout = reinterpret_cast<PFN_vkCreatePipelineLayout>(dlsym(libvulkan, "vkCreatePipelineLayout")); - vkDestroyPipelineLayout = reinterpret_cast<PFN_vkDestroyPipelineLayout>(dlsym(libvulkan, "vkDestroyPipelineLayout")); - vkCreateSampler = reinterpret_cast<PFN_vkCreateSampler>(dlsym(libvulkan, "vkCreateSampler")); - vkDestroySampler = reinterpret_cast<PFN_vkDestroySampler>(dlsym(libvulkan, "vkDestroySampler")); - vkCreateDescriptorSetLayout = - reinterpret_cast<PFN_vkCreateDescriptorSetLayout>(dlsym(libvulkan, "vkCreateDescriptorSetLayout")); - vkDestroyDescriptorSetLayout = - reinterpret_cast<PFN_vkDestroyDescriptorSetLayout>(dlsym(libvulkan, "vkDestroyDescriptorSetLayout")); - vkCreateDescriptorPool = reinterpret_cast<PFN_vkCreateDescriptorPool>(dlsym(libvulkan, "vkCreateDescriptorPool")); - vkDestroyDescriptorPool = reinterpret_cast<PFN_vkDestroyDescriptorPool>(dlsym(libvulkan, "vkDestroyDescriptorPool")); - vkResetDescriptorPool = reinterpret_cast<PFN_vkResetDescriptorPool>(dlsym(libvulkan, "vkResetDescriptorPool")); - vkAllocateDescriptorSets = reinterpret_cast<PFN_vkAllocateDescriptorSets>(dlsym(libvulkan, "vkAllocateDescriptorSets")); - vkFreeDescriptorSets = reinterpret_cast<PFN_vkFreeDescriptorSets>(dlsym(libvulkan, "vkFreeDescriptorSets")); - vkUpdateDescriptorSets = reinterpret_cast<PFN_vkUpdateDescriptorSets>(dlsym(libvulkan, "vkUpdateDescriptorSets")); - vkCreateFramebuffer = reinterpret_cast<PFN_vkCreateFramebuffer>(dlsym(libvulkan, "vkCreateFramebuffer")); - vkDestroyFramebuffer = reinterpret_cast<PFN_vkDestroyFramebuffer>(dlsym(libvulkan, "vkDestroyFramebuffer")); - vkCreateRenderPass = reinterpret_cast<PFN_vkCreateRenderPass>(dlsym(libvulkan, "vkCreateRenderPass")); - vkDestroyRenderPass = reinterpret_cast<PFN_vkDestroyRenderPass>(dlsym(libvulkan, "vkDestroyRenderPass")); - vkGetRenderAreaGranularity = reinterpret_cast<PFN_vkGetRenderAreaGranularity>(dlsym(libvulkan, "vkGetRenderAreaGranularity")); - vkCreateCommandPool = reinterpret_cast<PFN_vkCreateCommandPool>(dlsym(libvulkan, "vkCreateCommandPool")); - vkDestroyCommandPool = reinterpret_cast<PFN_vkDestroyCommandPool>(dlsym(libvulkan, "vkDestroyCommandPool")); - vkResetCommandPool = reinterpret_cast<PFN_vkResetCommandPool>(dlsym(libvulkan, "vkResetCommandPool")); - vkAllocateCommandBuffers = reinterpret_cast<PFN_vkAllocateCommandBuffers>(dlsym(libvulkan, "vkAllocateCommandBuffers")); - vkFreeCommandBuffers = reinterpret_cast<PFN_vkFreeCommandBuffers>(dlsym(libvulkan, "vkFreeCommandBuffers")); - vkBeginCommandBuffer = reinterpret_cast<PFN_vkBeginCommandBuffer>(dlsym(libvulkan, "vkBeginCommandBuffer")); - vkEndCommandBuffer = reinterpret_cast<PFN_vkEndCommandBuffer>(dlsym(libvulkan, "vkEndCommandBuffer")); - vkResetCommandBuffer = reinterpret_cast<PFN_vkResetCommandBuffer>(dlsym(libvulkan, "vkResetCommandBuffer")); - vkCmdBindPipeline = reinterpret_cast<PFN_vkCmdBindPipeline>(dlsym(libvulkan, "vkCmdBindPipeline")); - vkCmdSetViewport = reinterpret_cast<PFN_vkCmdSetViewport>(dlsym(libvulkan, "vkCmdSetViewport")); - vkCmdSetScissor = reinterpret_cast<PFN_vkCmdSetScissor>(dlsym(libvulkan, "vkCmdSetScissor")); - vkCmdSetLineWidth = reinterpret_cast<PFN_vkCmdSetLineWidth>(dlsym(libvulkan, "vkCmdSetLineWidth")); - vkCmdSetDepthBias = reinterpret_cast<PFN_vkCmdSetDepthBias>(dlsym(libvulkan, "vkCmdSetDepthBias")); - vkCmdSetBlendConstants = reinterpret_cast<PFN_vkCmdSetBlendConstants>(dlsym(libvulkan, "vkCmdSetBlendConstants")); - vkCmdSetDepthBounds = reinterpret_cast<PFN_vkCmdSetDepthBounds>(dlsym(libvulkan, "vkCmdSetDepthBounds")); - vkCmdSetStencilCompareMask = reinterpret_cast<PFN_vkCmdSetStencilCompareMask>(dlsym(libvulkan, "vkCmdSetStencilCompareMask")); - vkCmdSetStencilWriteMask = reinterpret_cast<PFN_vkCmdSetStencilWriteMask>(dlsym(libvulkan, "vkCmdSetStencilWriteMask")); - vkCmdSetStencilReference = reinterpret_cast<PFN_vkCmdSetStencilReference>(dlsym(libvulkan, "vkCmdSetStencilReference")); - vkCmdBindDescriptorSets = reinterpret_cast<PFN_vkCmdBindDescriptorSets>(dlsym(libvulkan, "vkCmdBindDescriptorSets")); - vkCmdBindIndexBuffer = reinterpret_cast<PFN_vkCmdBindIndexBuffer>(dlsym(libvulkan, "vkCmdBindIndexBuffer")); - vkCmdBindVertexBuffers = reinterpret_cast<PFN_vkCmdBindVertexBuffers>(dlsym(libvulkan, "vkCmdBindVertexBuffers")); - vkCmdDraw = reinterpret_cast<PFN_vkCmdDraw>(dlsym(libvulkan, "vkCmdDraw")); - vkCmdDrawIndexed = reinterpret_cast<PFN_vkCmdDrawIndexed>(dlsym(libvulkan, "vkCmdDrawIndexed")); - vkCmdDrawIndirect = reinterpret_cast<PFN_vkCmdDrawIndirect>(dlsym(libvulkan, "vkCmdDrawIndirect")); - vkCmdDrawIndexedIndirect = reinterpret_cast<PFN_vkCmdDrawIndexedIndirect>(dlsym(libvulkan, "vkCmdDrawIndexedIndirect")); - vkCmdDispatch = reinterpret_cast<PFN_vkCmdDispatch>(dlsym(libvulkan, "vkCmdDispatch")); - vkCmdDispatchIndirect = reinterpret_cast<PFN_vkCmdDispatchIndirect>(dlsym(libvulkan, "vkCmdDispatchIndirect")); - vkCmdCopyBuffer = reinterpret_cast<PFN_vkCmdCopyBuffer>(dlsym(libvulkan, "vkCmdCopyBuffer")); - vkCmdCopyImage = reinterpret_cast<PFN_vkCmdCopyImage>(dlsym(libvulkan, "vkCmdCopyImage")); - vkCmdBlitImage = reinterpret_cast<PFN_vkCmdBlitImage>(dlsym(libvulkan, "vkCmdBlitImage")); - vkCmdCopyBufferToImage = reinterpret_cast<PFN_vkCmdCopyBufferToImage>(dlsym(libvulkan, "vkCmdCopyBufferToImage")); - vkCmdCopyImageToBuffer = reinterpret_cast<PFN_vkCmdCopyImageToBuffer>(dlsym(libvulkan, "vkCmdCopyImageToBuffer")); - vkCmdUpdateBuffer = reinterpret_cast<PFN_vkCmdUpdateBuffer>(dlsym(libvulkan, "vkCmdUpdateBuffer")); - vkCmdFillBuffer = reinterpret_cast<PFN_vkCmdFillBuffer>(dlsym(libvulkan, "vkCmdFillBuffer")); - vkCmdClearColorImage = reinterpret_cast<PFN_vkCmdClearColorImage>(dlsym(libvulkan, "vkCmdClearColorImage")); - vkCmdClearDepthStencilImage = - reinterpret_cast<PFN_vkCmdClearDepthStencilImage>(dlsym(libvulkan, "vkCmdClearDepthStencilImage")); - vkCmdClearAttachments = reinterpret_cast<PFN_vkCmdClearAttachments>(dlsym(libvulkan, "vkCmdClearAttachments")); - vkCmdResolveImage = reinterpret_cast<PFN_vkCmdResolveImage>(dlsym(libvulkan, "vkCmdResolveImage")); - vkCmdSetEvent = reinterpret_cast<PFN_vkCmdSetEvent>(dlsym(libvulkan, "vkCmdSetEvent")); - vkCmdResetEvent = reinterpret_cast<PFN_vkCmdResetEvent>(dlsym(libvulkan, "vkCmdResetEvent")); - vkCmdWaitEvents = reinterpret_cast<PFN_vkCmdWaitEvents>(dlsym(libvulkan, "vkCmdWaitEvents")); - vkCmdPipelineBarrier = reinterpret_cast<PFN_vkCmdPipelineBarrier>(dlsym(libvulkan, "vkCmdPipelineBarrier")); - vkCmdBeginQuery = reinterpret_cast<PFN_vkCmdBeginQuery>(dlsym(libvulkan, "vkCmdBeginQuery")); - vkCmdEndQuery = reinterpret_cast<PFN_vkCmdEndQuery>(dlsym(libvulkan, "vkCmdEndQuery")); - vkCmdResetQueryPool = reinterpret_cast<PFN_vkCmdResetQueryPool>(dlsym(libvulkan, "vkCmdResetQueryPool")); - vkCmdWriteTimestamp = reinterpret_cast<PFN_vkCmdWriteTimestamp>(dlsym(libvulkan, "vkCmdWriteTimestamp")); - vkCmdCopyQueryPoolResults = reinterpret_cast<PFN_vkCmdCopyQueryPoolResults>(dlsym(libvulkan, "vkCmdCopyQueryPoolResults")); - vkCmdPushConstants = reinterpret_cast<PFN_vkCmdPushConstants>(dlsym(libvulkan, "vkCmdPushConstants")); - vkCmdBeginRenderPass = reinterpret_cast<PFN_vkCmdBeginRenderPass>(dlsym(libvulkan, "vkCmdBeginRenderPass")); - vkCmdNextSubpass = reinterpret_cast<PFN_vkCmdNextSubpass>(dlsym(libvulkan, "vkCmdNextSubpass")); - vkCmdEndRenderPass = reinterpret_cast<PFN_vkCmdEndRenderPass>(dlsym(libvulkan, "vkCmdEndRenderPass")); - vkCmdExecuteCommands = reinterpret_cast<PFN_vkCmdExecuteCommands>(dlsym(libvulkan, "vkCmdExecuteCommands")); - vkDestroySurfaceKHR = reinterpret_cast<PFN_vkDestroySurfaceKHR>(dlsym(libvulkan, "vkDestroySurfaceKHR")); - vkGetPhysicalDeviceSurfaceSupportKHR = - reinterpret_cast<PFN_vkGetPhysicalDeviceSurfaceSupportKHR>(dlsym(libvulkan, "vkGetPhysicalDeviceSurfaceSupportKHR")); - vkGetPhysicalDeviceSurfaceCapabilitiesKHR = reinterpret_cast<PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR>( - dlsym(libvulkan, "vkGetPhysicalDeviceSurfaceCapabilitiesKHR")); - vkGetPhysicalDeviceSurfaceFormatsKHR = - reinterpret_cast<PFN_vkGetPhysicalDeviceSurfaceFormatsKHR>(dlsym(libvulkan, "vkGetPhysicalDeviceSurfaceFormatsKHR")); - vkGetPhysicalDeviceSurfacePresentModesKHR = reinterpret_cast<PFN_vkGetPhysicalDeviceSurfacePresentModesKHR>( - dlsym(libvulkan, "vkGetPhysicalDeviceSurfacePresentModesKHR")); - vkCreateSwapchainKHR = reinterpret_cast<PFN_vkCreateSwapchainKHR>(dlsym(libvulkan, "vkCreateSwapchainKHR")); - vkDestroySwapchainKHR = reinterpret_cast<PFN_vkDestroySwapchainKHR>(dlsym(libvulkan, "vkDestroySwapchainKHR")); - vkGetSwapchainImagesKHR = reinterpret_cast<PFN_vkGetSwapchainImagesKHR>(dlsym(libvulkan, "vkGetSwapchainImagesKHR")); - vkAcquireNextImageKHR = reinterpret_cast<PFN_vkAcquireNextImageKHR>(dlsym(libvulkan, "vkAcquireNextImageKHR")); - vkQueuePresentKHR = reinterpret_cast<PFN_vkQueuePresentKHR>(dlsym(libvulkan, "vkQueuePresentKHR")); - vkGetPhysicalDeviceDisplayPropertiesKHR = - reinterpret_cast<PFN_vkGetPhysicalDeviceDisplayPropertiesKHR>(dlsym(libvulkan, "vkGetPhysicalDeviceDisplayPropertiesKHR")); - vkGetPhysicalDeviceDisplayPlanePropertiesKHR = reinterpret_cast<PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR>( - dlsym(libvulkan, "vkGetPhysicalDeviceDisplayPlanePropertiesKHR")); - vkGetDisplayPlaneSupportedDisplaysKHR = - reinterpret_cast<PFN_vkGetDisplayPlaneSupportedDisplaysKHR>(dlsym(libvulkan, "vkGetDisplayPlaneSupportedDisplaysKHR")); - vkGetDisplayModePropertiesKHR = - reinterpret_cast<PFN_vkGetDisplayModePropertiesKHR>(dlsym(libvulkan, "vkGetDisplayModePropertiesKHR")); - vkCreateDisplayModeKHR = reinterpret_cast<PFN_vkCreateDisplayModeKHR>(dlsym(libvulkan, "vkCreateDisplayModeKHR")); - vkGetDisplayPlaneCapabilitiesKHR = - reinterpret_cast<PFN_vkGetDisplayPlaneCapabilitiesKHR>(dlsym(libvulkan, "vkGetDisplayPlaneCapabilitiesKHR")); - vkCreateDisplayPlaneSurfaceKHR = - reinterpret_cast<PFN_vkCreateDisplayPlaneSurfaceKHR>(dlsym(libvulkan, "vkCreateDisplayPlaneSurfaceKHR")); - vkCreateSharedSwapchainsKHR = - reinterpret_cast<PFN_vkCreateSharedSwapchainsKHR>(dlsym(libvulkan, "vkCreateSharedSwapchainsKHR")); - -#ifdef VK_USE_PLATFORM_XLIB_KHR - vkCreateXlibSurfaceKHR = reinterpret_cast<PFN_vkCreateXlibSurfaceKHR>(dlsym(libvulkan, "vkCreateXlibSurfaceKHR")); - vkGetPhysicalDeviceXlibPresentationSupportKHR = reinterpret_cast<PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR>( - dlsym(libvulkan, "vkGetPhysicalDeviceXlibPresentationSupportKHR")); -#endif - -#ifdef VK_USE_PLATFORM_XCB_KHR - vkCreateXcbSurfaceKHR = reinterpret_cast<PFN_vkCreateXcbSurfaceKHR>(dlsym(libvulkan, "vkCreateXcbSurfaceKHR")); - vkGetPhysicalDeviceXcbPresentationSupportKHR = reinterpret_cast<PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR>( - dlsym(libvulkan, "vkGetPhysicalDeviceXcbPresentationSupportKHR")); -#endif - -#ifdef VK_USE_PLATFORM_WAYLAND_KHR - vkCreateWaylandSurfaceKHR = reinterpret_cast<PFN_vkCreateWaylandSurfaceKHR>(dlsym(libvulkan, "vkCreateWaylandSurfaceKHR")); - vkGetPhysicalDeviceWaylandPresentationSupportKHR = reinterpret_cast<PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR>( - dlsym(libvulkan, "vkGetPhysicalDeviceWaylandPresentationSupportKHR")); -#endif - -#ifdef VK_USE_PLATFORM_MIR_KHR - vkCreateMirSurfaceKHR = reinterpret_cast<PFN_vkCreateMirSurfaceKHR>(dlsym(libvulkan, "vkCreateMirSurfaceKHR")); - vkGetPhysicalDeviceMirPresentationSupportKHR = reinterpret_cast<PFN_vkGetPhysicalDeviceMirPresentationSupportKHR>( - dlsym(libvulkan, "vkGetPhysicalDeviceMirPresentationSupportKHR")); -#endif - -#ifdef VK_USE_PLATFORM_ANDROID_KHR - vkCreateAndroidSurfaceKHR = reinterpret_cast<PFN_vkCreateAndroidSurfaceKHR>(dlsym(libvulkan, "vkCreateAndroidSurfaceKHR")); -#endif - -#ifdef VK_USE_PLATFORM_WIN32_KHR - vkCreateWin32SurfaceKHR = reinterpret_cast<PFN_vkCreateWin32SurfaceKHR>(dlsym(libvulkan, "vkCreateWin32SurfaceKHR")); - vkGetPhysicalDeviceWin32PresentationSupportKHR = reinterpret_cast<PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR>( - dlsym(libvulkan, "vkGetPhysicalDeviceWin32PresentationSupportKHR")); -#endif - return 1; -} - -// No Vulkan support, do not set function addresses -PFN_vkCreateInstance vkCreateInstance; -PFN_vkDestroyInstance vkDestroyInstance; -PFN_vkEnumeratePhysicalDevices vkEnumeratePhysicalDevices; -PFN_vkGetPhysicalDeviceFeatures vkGetPhysicalDeviceFeatures; -PFN_vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceFeatures2; -PFN_vkGetPhysicalDeviceFormatProperties vkGetPhysicalDeviceFormatProperties; -PFN_vkGetPhysicalDeviceImageFormatProperties vkGetPhysicalDeviceImageFormatProperties; -PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties; -PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties; -PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties; -PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr; -PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr; -PFN_vkCreateDevice vkCreateDevice; -PFN_vkDestroyDevice vkDestroyDevice; -PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties; -PFN_vkEnumerateDeviceExtensionProperties vkEnumerateDeviceExtensionProperties; -PFN_vkEnumerateInstanceLayerProperties vkEnumerateInstanceLayerProperties; -PFN_vkEnumerateDeviceLayerProperties vkEnumerateDeviceLayerProperties; -PFN_vkGetDeviceQueue vkGetDeviceQueue; -PFN_vkQueueSubmit vkQueueSubmit; -PFN_vkQueueWaitIdle vkQueueWaitIdle; -PFN_vkDeviceWaitIdle vkDeviceWaitIdle; -PFN_vkAllocateMemory vkAllocateMemory; -PFN_vkFreeMemory vkFreeMemory; -PFN_vkMapMemory vkMapMemory; -PFN_vkUnmapMemory vkUnmapMemory; -PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges; -PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges; -PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment; -PFN_vkBindBufferMemory vkBindBufferMemory; -PFN_vkBindImageMemory vkBindImageMemory; -PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements; -PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements; -PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements; -PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties; -PFN_vkQueueBindSparse vkQueueBindSparse; -PFN_vkCreateFence vkCreateFence; -PFN_vkDestroyFence vkDestroyFence; -PFN_vkResetFences vkResetFences; -PFN_vkGetFenceStatus vkGetFenceStatus; -PFN_vkWaitForFences vkWaitForFences; -PFN_vkCreateSemaphore vkCreateSemaphore; -PFN_vkDestroySemaphore vkDestroySemaphore; -PFN_vkCreateEvent vkCreateEvent; -PFN_vkDestroyEvent vkDestroyEvent; -PFN_vkGetEventStatus vkGetEventStatus; -PFN_vkSetEvent vkSetEvent; -PFN_vkResetEvent vkResetEvent; -PFN_vkCreateQueryPool vkCreateQueryPool; -PFN_vkDestroyQueryPool vkDestroyQueryPool; -PFN_vkGetQueryPoolResults vkGetQueryPoolResults; -PFN_vkCreateBuffer vkCreateBuffer; -PFN_vkDestroyBuffer vkDestroyBuffer; -PFN_vkCreateBufferView vkCreateBufferView; -PFN_vkDestroyBufferView vkDestroyBufferView; -PFN_vkCreateImage vkCreateImage; -PFN_vkDestroyImage vkDestroyImage; -PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout; -PFN_vkCreateImageView vkCreateImageView; -PFN_vkDestroyImageView vkDestroyImageView; -PFN_vkCreateShaderModule vkCreateShaderModule; -PFN_vkDestroyShaderModule vkDestroyShaderModule; -PFN_vkCreatePipelineCache vkCreatePipelineCache; -PFN_vkDestroyPipelineCache vkDestroyPipelineCache; -PFN_vkGetPipelineCacheData vkGetPipelineCacheData; -PFN_vkMergePipelineCaches vkMergePipelineCaches; -PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines; -PFN_vkCreateComputePipelines vkCreateComputePipelines; -PFN_vkDestroyPipeline vkDestroyPipeline; -PFN_vkCreatePipelineLayout vkCreatePipelineLayout; -PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout; -PFN_vkCreateSampler vkCreateSampler; -PFN_vkDestroySampler vkDestroySampler; -PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout; -PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout; -PFN_vkCreateDescriptorPool vkCreateDescriptorPool; -PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool; -PFN_vkResetDescriptorPool vkResetDescriptorPool; -PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets; -PFN_vkFreeDescriptorSets vkFreeDescriptorSets; -PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets; -PFN_vkCreateFramebuffer vkCreateFramebuffer; -PFN_vkDestroyFramebuffer vkDestroyFramebuffer; -PFN_vkCreateRenderPass vkCreateRenderPass; -PFN_vkDestroyRenderPass vkDestroyRenderPass; -PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity; -PFN_vkCreateCommandPool vkCreateCommandPool; -PFN_vkDestroyCommandPool vkDestroyCommandPool; -PFN_vkResetCommandPool vkResetCommandPool; -PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers; -PFN_vkFreeCommandBuffers vkFreeCommandBuffers; -PFN_vkBeginCommandBuffer vkBeginCommandBuffer; -PFN_vkEndCommandBuffer vkEndCommandBuffer; -PFN_vkResetCommandBuffer vkResetCommandBuffer; -PFN_vkCmdBindPipeline vkCmdBindPipeline; -PFN_vkCmdSetViewport vkCmdSetViewport; -PFN_vkCmdSetScissor vkCmdSetScissor; -PFN_vkCmdSetLineWidth vkCmdSetLineWidth; -PFN_vkCmdSetDepthBias vkCmdSetDepthBias; -PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants; -PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds; -PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask; -PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask; -PFN_vkCmdSetStencilReference vkCmdSetStencilReference; -PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets; -PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer; -PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers; -PFN_vkCmdDraw vkCmdDraw; -PFN_vkCmdDrawIndexed vkCmdDrawIndexed; -PFN_vkCmdDrawIndirect vkCmdDrawIndirect; -PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect; -PFN_vkCmdDispatch vkCmdDispatch; -PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect; -PFN_vkCmdCopyBuffer vkCmdCopyBuffer; -PFN_vkCmdCopyImage vkCmdCopyImage; -PFN_vkCmdBlitImage vkCmdBlitImage; -PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage; -PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer; -PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer; -PFN_vkCmdFillBuffer vkCmdFillBuffer; -PFN_vkCmdClearColorImage vkCmdClearColorImage; -PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage; -PFN_vkCmdClearAttachments vkCmdClearAttachments; -PFN_vkCmdResolveImage vkCmdResolveImage; -PFN_vkCmdSetEvent vkCmdSetEvent; -PFN_vkCmdResetEvent vkCmdResetEvent; -PFN_vkCmdWaitEvents vkCmdWaitEvents; -PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier; -PFN_vkCmdBeginQuery vkCmdBeginQuery; -PFN_vkCmdEndQuery vkCmdEndQuery; -PFN_vkCmdResetQueryPool vkCmdResetQueryPool; -PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp; -PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults; -PFN_vkCmdPushConstants vkCmdPushConstants; -PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass; -PFN_vkCmdNextSubpass vkCmdNextSubpass; -PFN_vkCmdEndRenderPass vkCmdEndRenderPass; -PFN_vkCmdExecuteCommands vkCmdExecuteCommands; -PFN_vkDestroySurfaceKHR vkDestroySurfaceKHR; -PFN_vkGetPhysicalDeviceSurfaceSupportKHR vkGetPhysicalDeviceSurfaceSupportKHR; -PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR vkGetPhysicalDeviceSurfaceCapabilitiesKHR; -PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR; -PFN_vkGetPhysicalDeviceSurfacePresentModesKHR vkGetPhysicalDeviceSurfacePresentModesKHR; -PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR; -PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR; -PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR; -PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR; -PFN_vkQueuePresentKHR vkQueuePresentKHR; -PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR; -PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR; -PFN_vkGetDisplayPlaneSupportedDisplaysKHR vkGetDisplayPlaneSupportedDisplaysKHR; -PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR; -PFN_vkCreateDisplayModeKHR vkCreateDisplayModeKHR; -PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR; -PFN_vkCreateDisplayPlaneSurfaceKHR vkCreateDisplayPlaneSurfaceKHR; -PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR; - -#ifdef VK_USE_PLATFORM_XLIB_KHR -PFN_vkCreateXlibSurfaceKHR vkCreateXlibSurfaceKHR; -PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR vkGetPhysicalDeviceXlibPresentationSupportKHR; -#endif - -#ifdef VK_USE_PLATFORM_XCB_KHR -PFN_vkCreateXcbSurfaceKHR vkCreateXcbSurfaceKHR; -PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR vkGetPhysicalDeviceXcbPresentationSupportKHR; -#endif - -#ifdef VK_USE_PLATFORM_WAYLAND_KHR -PFN_vkCreateWaylandSurfaceKHR vkCreateWaylandSurfaceKHR; -PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR vkGetPhysicalDeviceWaylandPresentationSupportKHR; -#endif - -#ifdef VK_USE_PLATFORM_MIR_KHR -PFN_vkCreateMirSurfaceKHR vkCreateMirSurfaceKHR; -PFN_vkGetPhysicalDeviceMirPresentationSupportKHR vkGetPhysicalDeviceMirPresentationSupportKHR; -#endif - -#ifdef VK_USE_PLATFORM_ANDROID_KHR -PFN_vkCreateAndroidSurfaceKHR vkCreateAndroidSurfaceKHR; -#endif - -#ifdef VK_USE_PLATFORM_WIN32_KHR -PFN_vkCreateWin32SurfaceKHR vkCreateWin32SurfaceKHR; -PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR vkGetPhysicalDeviceWin32PresentationSupportKHR; -#endif -PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallbackEXT; -PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallbackEXT; -PFN_vkDebugReportMessageEXT vkDebugReportMessageEXT; - -#ifdef __cplusplus -} -#endif diff --git a/common/vulkan_wrapper.h b/common/vulkan_wrapper.h deleted file mode 100644 index 3fa3ac36..00000000 --- a/common/vulkan_wrapper.h +++ /dev/null @@ -1,239 +0,0 @@ -/* - * Copyright 2016 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -// This file is generated. -#ifndef VULKAN_WRAPPER_H -#define VULKAN_WRAPPER_H - -#ifdef __cplusplus -extern "C" { -#endif - -#define VK_NO_PROTOTYPES 1 -#include <vulkan/vulkan.h> - -/* Initialize the Vulkan function pointer variables declared in this header. - * Returns 0 if vulkan is not available, non-zero if it is available. - */ -int InitVulkan(void); - -// VK_core -extern PFN_vkCreateInstance vkCreateInstance; -extern PFN_vkDestroyInstance vkDestroyInstance; -extern PFN_vkEnumeratePhysicalDevices vkEnumeratePhysicalDevices; -extern PFN_vkGetPhysicalDeviceFeatures vkGetPhysicalDeviceFeatures; -extern PFN_vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceFeatures2; -extern PFN_vkGetPhysicalDeviceFormatProperties vkGetPhysicalDeviceFormatProperties; -extern PFN_vkGetPhysicalDeviceImageFormatProperties vkGetPhysicalDeviceImageFormatProperties; -extern PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties; -extern PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties; -extern PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties; -extern PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr; -extern PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr; -extern PFN_vkCreateDevice vkCreateDevice; -extern PFN_vkDestroyDevice vkDestroyDevice; -extern PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties; -extern PFN_vkEnumerateDeviceExtensionProperties vkEnumerateDeviceExtensionProperties; -extern PFN_vkEnumerateInstanceLayerProperties vkEnumerateInstanceLayerProperties; -extern PFN_vkEnumerateDeviceLayerProperties vkEnumerateDeviceLayerProperties; -extern PFN_vkGetDeviceQueue vkGetDeviceQueue; -extern PFN_vkQueueSubmit vkQueueSubmit; -extern PFN_vkQueueWaitIdle vkQueueWaitIdle; -extern PFN_vkDeviceWaitIdle vkDeviceWaitIdle; -extern PFN_vkAllocateMemory vkAllocateMemory; -extern PFN_vkFreeMemory vkFreeMemory; -extern PFN_vkMapMemory vkMapMemory; -extern PFN_vkUnmapMemory vkUnmapMemory; -extern PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges; -extern PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges; -extern PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment; -extern PFN_vkBindBufferMemory vkBindBufferMemory; -extern PFN_vkBindImageMemory vkBindImageMemory; -extern PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements; -extern PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements; -extern PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements; -extern PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties; -extern PFN_vkQueueBindSparse vkQueueBindSparse; -extern PFN_vkCreateFence vkCreateFence; -extern PFN_vkDestroyFence vkDestroyFence; -extern PFN_vkResetFences vkResetFences; -extern PFN_vkGetFenceStatus vkGetFenceStatus; -extern PFN_vkWaitForFences vkWaitForFences; -extern PFN_vkCreateSemaphore vkCreateSemaphore; -extern PFN_vkDestroySemaphore vkDestroySemaphore; -extern PFN_vkCreateEvent vkCreateEvent; -extern PFN_vkDestroyEvent vkDestroyEvent; -extern PFN_vkGetEventStatus vkGetEventStatus; -extern PFN_vkSetEvent vkSetEvent; -extern PFN_vkResetEvent vkResetEvent; -extern PFN_vkCreateQueryPool vkCreateQueryPool; -extern PFN_vkDestroyQueryPool vkDestroyQueryPool; -extern PFN_vkGetQueryPoolResults vkGetQueryPoolResults; -extern PFN_vkCreateBuffer vkCreateBuffer; -extern PFN_vkDestroyBuffer vkDestroyBuffer; -extern PFN_vkCreateBufferView vkCreateBufferView; -extern PFN_vkDestroyBufferView vkDestroyBufferView; -extern PFN_vkCreateImage vkCreateImage; -extern PFN_vkDestroyImage vkDestroyImage; -extern PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout; -extern PFN_vkCreateImageView vkCreateImageView; -extern PFN_vkDestroyImageView vkDestroyImageView; -extern PFN_vkCreateShaderModule vkCreateShaderModule; -extern PFN_vkDestroyShaderModule vkDestroyShaderModule; -extern PFN_vkCreatePipelineCache vkCreatePipelineCache; -extern PFN_vkDestroyPipelineCache vkDestroyPipelineCache; -extern PFN_vkGetPipelineCacheData vkGetPipelineCacheData; -extern PFN_vkMergePipelineCaches vkMergePipelineCaches; -extern PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines; -extern PFN_vkCreateComputePipelines vkCreateComputePipelines; -extern PFN_vkDestroyPipeline vkDestroyPipeline; -extern PFN_vkCreatePipelineLayout vkCreatePipelineLayout; -extern PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout; -extern PFN_vkCreateSampler vkCreateSampler; -extern PFN_vkDestroySampler vkDestroySampler; -extern PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout; -extern PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout; -extern PFN_vkCreateDescriptorPool vkCreateDescriptorPool; -extern PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool; -extern PFN_vkResetDescriptorPool vkResetDescriptorPool; -extern PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets; -extern PFN_vkFreeDescriptorSets vkFreeDescriptorSets; -extern PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets; -extern PFN_vkCreateFramebuffer vkCreateFramebuffer; -extern PFN_vkDestroyFramebuffer vkDestroyFramebuffer; -extern PFN_vkCreateRenderPass vkCreateRenderPass; -extern PFN_vkDestroyRenderPass vkDestroyRenderPass; -extern PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity; -extern PFN_vkCreateCommandPool vkCreateCommandPool; -extern PFN_vkDestroyCommandPool vkDestroyCommandPool; -extern PFN_vkResetCommandPool vkResetCommandPool; -extern PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers; -extern PFN_vkFreeCommandBuffers vkFreeCommandBuffers; -extern PFN_vkBeginCommandBuffer vkBeginCommandBuffer; -extern PFN_vkEndCommandBuffer vkEndCommandBuffer; -extern PFN_vkResetCommandBuffer vkResetCommandBuffer; -extern PFN_vkCmdBindPipeline vkCmdBindPipeline; -extern PFN_vkCmdSetViewport vkCmdSetViewport; -extern PFN_vkCmdSetScissor vkCmdSetScissor; -extern PFN_vkCmdSetLineWidth vkCmdSetLineWidth; -extern PFN_vkCmdSetDepthBias vkCmdSetDepthBias; -extern PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants; -extern PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds; -extern PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask; -extern PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask; -extern PFN_vkCmdSetStencilReference vkCmdSetStencilReference; -extern PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets; -extern PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer; -extern PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers; -extern PFN_vkCmdDraw vkCmdDraw; -extern PFN_vkCmdDrawIndexed vkCmdDrawIndexed; -extern PFN_vkCmdDrawIndirect vkCmdDrawIndirect; -extern PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect; -extern PFN_vkCmdDispatch vkCmdDispatch; -extern PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect; -extern PFN_vkCmdCopyBuffer vkCmdCopyBuffer; -extern PFN_vkCmdCopyImage vkCmdCopyImage; -extern PFN_vkCmdBlitImage vkCmdBlitImage; -extern PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage; -extern PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer; -extern PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer; -extern PFN_vkCmdFillBuffer vkCmdFillBuffer; -extern PFN_vkCmdClearColorImage vkCmdClearColorImage; -extern PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage; -extern PFN_vkCmdClearAttachments vkCmdClearAttachments; -extern PFN_vkCmdResolveImage vkCmdResolveImage; -extern PFN_vkCmdSetEvent vkCmdSetEvent; -extern PFN_vkCmdResetEvent vkCmdResetEvent; -extern PFN_vkCmdWaitEvents vkCmdWaitEvents; -extern PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier; -extern PFN_vkCmdBeginQuery vkCmdBeginQuery; -extern PFN_vkCmdEndQuery vkCmdEndQuery; -extern PFN_vkCmdResetQueryPool vkCmdResetQueryPool; -extern PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp; -extern PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults; -extern PFN_vkCmdPushConstants vkCmdPushConstants; -extern PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass; -extern PFN_vkCmdNextSubpass vkCmdNextSubpass; -extern PFN_vkCmdEndRenderPass vkCmdEndRenderPass; -extern PFN_vkCmdExecuteCommands vkCmdExecuteCommands; - -// VK_KHR_surface -extern PFN_vkDestroySurfaceKHR vkDestroySurfaceKHR; -extern PFN_vkGetPhysicalDeviceSurfaceSupportKHR vkGetPhysicalDeviceSurfaceSupportKHR; -extern PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR vkGetPhysicalDeviceSurfaceCapabilitiesKHR; -extern PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR; -extern PFN_vkGetPhysicalDeviceSurfacePresentModesKHR vkGetPhysicalDeviceSurfacePresentModesKHR; - -// VK_KHR_swapchain -extern PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR; -extern PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR; -extern PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR; -extern PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR; -extern PFN_vkQueuePresentKHR vkQueuePresentKHR; - -// VK_KHR_display -extern PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR; -extern PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR; -extern PFN_vkGetDisplayPlaneSupportedDisplaysKHR vkGetDisplayPlaneSupportedDisplaysKHR; -extern PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR; -extern PFN_vkCreateDisplayModeKHR vkCreateDisplayModeKHR; -extern PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR; -extern PFN_vkCreateDisplayPlaneSurfaceKHR vkCreateDisplayPlaneSurfaceKHR; - -// VK_KHR_display_swapchain -extern PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR; - -#ifdef VK_USE_PLATFORM_XLIB_KHR -// VK_KHR_xlib_surface -extern PFN_vkCreateXlibSurfaceKHR vkCreateXlibSurfaceKHR; -extern PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR vkGetPhysicalDeviceXlibPresentationSupportKHR; -#endif - -#ifdef VK_USE_PLATFORM_XCB_KHR -// VK_KHR_xcb_surface -extern PFN_vkCreateXcbSurfaceKHR vkCreateXcbSurfaceKHR; -extern PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR vkGetPhysicalDeviceXcbPresentationSupportKHR; -#endif - -#ifdef VK_USE_PLATFORM_WAYLAND_KHR -// VK_KHR_wayland_surface -extern PFN_vkCreateWaylandSurfaceKHR vkCreateWaylandSurfaceKHR; -extern PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR vkGetPhysicalDeviceWaylandPresentationSupportKHR; -#endif - -#ifdef VK_USE_PLATFORM_MIR_KHR -// VK_KHR_mir_surface -extern PFN_vkCreateMirSurfaceKHR vkCreateMirSurfaceKHR; -extern PFN_vkGetPhysicalDeviceMirPresentationSupportKHR vkGetPhysicalDeviceMirPresentationSupportKHR; -#endif - -#ifdef VK_USE_PLATFORM_ANDROID_KHR -// VK_KHR_android_surface -extern PFN_vkCreateAndroidSurfaceKHR vkCreateAndroidSurfaceKHR; -#endif - -#ifdef VK_USE_PLATFORM_WIN32_KHR -// VK_KHR_win32_surface -extern PFN_vkCreateWin32SurfaceKHR vkCreateWin32SurfaceKHR; -extern PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR vkGetPhysicalDeviceWin32PresentationSupportKHR; -#endif - -// VK_KHR_sampler_mirror_clamp_to_edge - -#ifdef __cplusplus -} -#endif - -#endif // VULKAN_WRAPPER_H diff --git a/demos/CMakeLists.txt b/cube/CMakeLists.txt index 46b1f6b4..d437cf8f 100644 --- a/demos/CMakeLists.txt +++ b/cube/CMakeLists.txt @@ -1,73 +1,100 @@ -set(DEMO_INCLUDE_DIRS +set(CUBE_INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR}/.. ) +if(CMAKE_SYSTEM_NAME STREQUAL "Linux") + include(FindPkgConfig) + option(BUILD_WSI_XCB_SUPPORT "Build XCB WSI support" ON) + option(BUILD_WSI_XLIB_SUPPORT "Build Xlib WSI support" ON) + option(BUILD_WSI_WAYLAND_SUPPORT "Build Wayland WSI support" ON) + option(BUILD_WSI_MIR_SUPPORT "Build Mir WSI support" OFF) + set(CUBE_WSI_SELECTION "XCB" CACHE STRING "Select WSI target for cube (XCB, XLIB, WAYLAND, MIR, DISPLAY)") + + if (BUILD_WSI_XCB_SUPPORT) + find_package(XCB REQUIRED) + endif() + + if (BUILD_WSI_XLIB_SUPPORT) + find_package(X11 REQUIRED) + endif() + + if (BUILD_WSI_WAYLAND_SUPPORT) + find_package(Wayland REQUIRED) + include_directories(${WAYLAND_CLIENT_INCLUDE_DIR}) + endif() + + if (BUILD_WSI_MIR_SUPPORT) + find_package(Mir REQUIRED) + endif() + +endif() + if(CMAKE_SYSTEM_NAME STREQUAL "Windows") add_definitions(-DVK_USE_PLATFORM_WIN32_KHR -DWIN32_LEAN_AND_MEAN) set(DisplayServer Win32) if (NOT MSVC_VERSION LESS 1900) # Enable control flow guard - message(STATUS "Building demos with control flow guard") + message(STATUS "Building cube with control flow guard") add_compile_options("$<$<CXX_COMPILER_ID:MSVC>:/guard:cf>") set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /guard:cf") set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /guard:cf") endif() - set(DEMO_INCLUDE_DIRS + set(CUBE_INCLUDE_DIRS "${PROJECT_SOURCE_DIR}/icd/common" - ${DEMO_INCLUDE_DIRS} + ${CUBE_INCLUDE_DIRS} ) elseif(CMAKE_SYSTEM_NAME STREQUAL "Android") add_definitions(-DVK_USE_PLATFORM_ANDROID_KHR) elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux") - if (NOT DEMOS_WSI_SELECTION) - set(DEMOS_WSI_SELECTION "XCB") + if (NOT CUBE_WSI_SELECTION) + set(CUBE_WSI_SELECTION "XCB") endif() - if (DEMOS_WSI_SELECTION STREQUAL "XCB") + if (CUBE_WSI_SELECTION STREQUAL "XCB") if (NOT BUILD_WSI_XCB_SUPPORT) - message( FATAL_ERROR "Selected XCB for demos build but not building Xcb support" ) + message( FATAL_ERROR "Selected XCB for cube build but not building Xcb support" ) endif() - set(DEMO_INCLUDE_DIRS + set(CUBE_INCLUDE_DIRS ${XCB_INCLUDE_DIRS} - ${DEMO_INCLUDE_DIRS} + ${CUBE_INCLUDE_DIRS} ) link_libraries(${XCB_LIBRARIES}) add_definitions(-DVK_USE_PLATFORM_XCB_KHR) - elseif(DEMOS_WSI_SELECTION STREQUAL "XLIB") + elseif(CUBE_WSI_SELECTION STREQUAL "XLIB") if (NOT BUILD_WSI_XLIB_SUPPORT) - message( FATAL_ERROR "Selected XLIB for demos build but not building Xlib support" ) + message( FATAL_ERROR "Selected XLIB for cube build but not building Xlib support" ) endif() - set(DEMO_INCLUDE_DIRS + set(CUBE_INCLUDE_DIRS ${X11_INCLUDE_DIR} - ${DEMO_INCLUDE_DIRS} + ${CUBE_INCLUDE_DIRS} ) link_libraries(${X11_LIBRARIES}) add_definitions(-DVK_USE_PLATFORM_XLIB_KHR) - elseif(DEMOS_WSI_SELECTION STREQUAL "WAYLAND") + elseif(CUBE_WSI_SELECTION STREQUAL "WAYLAND") if (NOT BUILD_WSI_WAYLAND_SUPPORT) - message( FATAL_ERROR "Selected Wayland for demos build but not building Wayland support" ) + message( FATAL_ERROR "Selected Wayland for cube build but not building Wayland support" ) endif() - set(DEMO_INCLUDE_DIRS + set(CUBE_INCLUDE_DIRS ${WAYLAND_CLIENT_INCLUDE_DIR} - ${DEMO_INCLUDE_DIRS} + ${CUBE_INCLUDE_DIRS} ) link_libraries(${WAYLAND_CLIENT_LIBRARIES}) add_definitions(-DVK_USE_PLATFORM_WAYLAND_KHR) - elseif(DEMOS_WSI_SELECTION STREQUAL "MIR") + elseif(CUBE_WSI_SELECTION STREQUAL "MIR") if (NOT BUILD_WSI_MIR_SUPPORT) - message( FATAL_ERROR "Selected MIR for demos build but not building Mir support" ) + message( FATAL_ERROR "Selected MIR for cube build but not building Mir support" ) endif() add_definitions(-DVK_USE_PLATFORM_MIR_KHR) - set(DEMO_INCLUDE_DIRS + set(CUBE_INCLUDE_DIRS ${MIR_INCLUDE_DIR} - ${DEMO_INCLUDE_DIRS} + ${CUBE_INCLUDE_DIRS} ) # TODO - Add Mir support - elseif(DEMOS_WSI_SELECTION STREQUAL "DISPLAY") + elseif(CUBE_WSI_SELECTION STREQUAL "DISPLAY") add_definitions(-DVK_USE_PLATFORM_DISPLAY_KHR) else() - message( FATAL_ERROR "Unrecognized value for DEMOS_WSI_SELECTION: ${DEMOS_WSI_SELECTION}" ) + message( FATAL_ERROR "Unrecognized value for CUBE_WSI_SELECTION: ${CUBE_WSI_SELECTION}" ) endif() include_directories ("${PROJECT_SOURCE_DIR}/icd/common") @@ -79,7 +106,7 @@ else() endif() file(GLOB TEXTURES - "${PROJECT_SOURCE_DIR}/demos/*.ppm" + "${PROJECT_SOURCE_DIR}/cube/*.ppm" ) file(COPY ${TEXTURES} DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) @@ -113,22 +140,22 @@ if(WIN32) endif() endforeach() - file(COPY cube.vcxproj.user DESTINATION ${CMAKE_BINARY_DIR}/demos) + file(COPY cube.vcxproj.user DESTINATION ${CMAKE_BINARY_DIR}/cube) endif() add_custom_command( - COMMENT "Compiling cube demo vertex shader" + COMMENT "Compiling cube vertex shader" OUTPUT cube.vert.inc - COMMAND ${GLSLANG_VALIDATOR} -V -x -o ${CMAKE_CURRENT_BINARY_DIR}/cube.vert.inc ${PROJECT_SOURCE_DIR}/demos/cube.vert - MAIN_DEPENDENCY ${PROJECT_SOURCE_DIR}/demos/cube.vert - DEPENDS ${PROJECT_SOURCE_DIR}/demos/cube.vert ${GLSLANG_VALIDATOR} + COMMAND ${GLSLANG_VALIDATOR} -V -x -o ${CMAKE_CURRENT_BINARY_DIR}/cube.vert.inc ${PROJECT_SOURCE_DIR}/cube/cube.vert + MAIN_DEPENDENCY ${PROJECT_SOURCE_DIR}/cube/cube.vert + DEPENDS ${PROJECT_SOURCE_DIR}/cube/cube.vert ${GLSLANG_VALIDATOR} ) add_custom_command( - COMMENT "Compiling cube demo fragment shader" + COMMENT "Compiling cube fragment shader" OUTPUT cube.frag.inc - COMMAND ${GLSLANG_VALIDATOR} -V -x -o ${CMAKE_CURRENT_BINARY_DIR}/cube.frag.inc ${PROJECT_SOURCE_DIR}/demos/cube.frag - MAIN_DEPENDENCY ${PROJECT_SOURCE_DIR}/demos/cube.frag - DEPENDS ${PROJECT_SOURCE_DIR}/demos/cube.frag ${GLSLANG_VALIDATOR} + COMMAND ${GLSLANG_VALIDATOR} -V -x -o ${CMAKE_CURRENT_BINARY_DIR}/cube.frag.inc ${PROJECT_SOURCE_DIR}/cube/cube.frag + MAIN_DEPENDENCY ${PROJECT_SOURCE_DIR}/cube/cube.frag + DEPENDS ${PROJECT_SOURCE_DIR}/cube/cube.frag ${GLSLANG_VALIDATOR} ) include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}) @@ -138,13 +165,13 @@ if(WIN32) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_CRT_SECURE_NO_WARNINGS -D_USE_MATH_DEFINES") endif() -# MacOS setup common to all demos +# MacOS setup if(APPLE) include(macOS/common.cmake) endif() include_directories( - ${DEMO_INCLUDE_DIRS} + ${CUBE_INCLUDE_DIRS} ) # vulkaninfo @@ -191,7 +218,7 @@ if(APPLE) include(macOS/cube/cube.cmake) elseif(NOT WIN32) if (${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR}) - add_executable(cube cube.c ${PROJECT_SOURCE_DIR}/demos/cube.vert ${PROJECT_SOURCE_DIR}/demos/cube.frag cube.vert.inc cube.frag.inc) + add_executable(cube cube.c ${PROJECT_SOURCE_DIR}/cube/cube.vert ${PROJECT_SOURCE_DIR}/cube/cube.frag cube.vert.inc cube.frag.inc) target_link_libraries(cube ${LIBRARIES}) endif() else() @@ -201,7 +228,7 @@ else() set (LIB_DIR "Win32") endif() - add_executable(cube WIN32 cube.c ${PROJECT_SOURCE_DIR}/demos/cube.vert ${PROJECT_SOURCE_DIR}/demos/cube.frag cube.vert.inc cube.frag.inc) + add_executable(cube WIN32 cube.c ${PROJECT_SOURCE_DIR}/cube/cube.vert ${PROJECT_SOURCE_DIR}/cube/cube.frag cube.vert.inc cube.frag.inc) target_link_libraries(cube ${LIBRARIES}) endif() @@ -212,7 +239,7 @@ if(APPLE) include(macOS/cubepp/cubepp.cmake) elseif(NOT WIN32) if (${CMAKE_SYSTEM_PROCESSOR} STREQUAL ${CMAKE_HOST_SYSTEM_PROCESSOR}) - add_executable(cubepp cube.cpp ${PROJECT_SOURCE_DIR}/demos/cube.vert ${PROJECT_SOURCE_DIR}/demos/cube.frag cube.vert.inc cube.frag.inc) + add_executable(cubepp cube.cpp ${PROJECT_SOURCE_DIR}/cube/cube.vert ${PROJECT_SOURCE_DIR}/cube/cube.frag cube.vert.inc cube.frag.inc) target_link_libraries(cubepp ${LIBRARIES}) endif() else() @@ -222,6 +249,6 @@ else() set (LIB_DIR "Win32") endif() - add_executable(cubepp WIN32 cube.cpp ${PROJECT_SOURCE_DIR}/demos/cube.vert ${PROJECT_SOURCE_DIR}/demos/cube.frag cube.vert.inc cube.frag.inc) + add_executable(cubepp WIN32 cube.cpp ${PROJECT_SOURCE_DIR}/cube/cube.vert ${PROJECT_SOURCE_DIR}/cube/cube.frag cube.vert.inc cube.frag.inc) target_link_libraries(cubepp ${LIBRARIES}) endif() diff --git a/demos/android/cube-with-layers/AndroidManifest.xml b/cube/android/cube-with-layers/AndroidManifest.xml index 29c8d1a0..29c8d1a0 100644 --- a/demos/android/cube-with-layers/AndroidManifest.xml +++ b/cube/android/cube-with-layers/AndroidManifest.xml diff --git a/demos/android/cube-with-layers/custom_rules.xml b/cube/android/cube-with-layers/custom_rules.xml index ab517bfe..ab517bfe 100644 --- a/demos/android/cube-with-layers/custom_rules.xml +++ b/cube/android/cube-with-layers/custom_rules.xml diff --git a/demos/android/cube-with-layers/res/values/strings.xml b/cube/android/cube-with-layers/res/values/strings.xml index bdf81e5b..bdf81e5b 100644 --- a/demos/android/cube-with-layers/res/values/strings.xml +++ b/cube/android/cube-with-layers/res/values/strings.xml diff --git a/demos/android/cube/AndroidManifest.xml b/cube/android/cube/AndroidManifest.xml index 6ac0c8a3..6ac0c8a3 100644 --- a/demos/android/cube/AndroidManifest.xml +++ b/cube/android/cube/AndroidManifest.xml diff --git a/demos/android/cube/custom_rules.xml b/cube/android/cube/custom_rules.xml index 335c1c34..335c1c34 100644 --- a/demos/android/cube/custom_rules.xml +++ b/cube/android/cube/custom_rules.xml diff --git a/demos/android/cube/res/values/strings.xml b/cube/android/cube/res/values/strings.xml index 7f175a60..7f175a60 100644 --- a/demos/android/cube/res/values/strings.xml +++ b/cube/android/cube/res/values/strings.xml diff --git a/demos/android/include/cube.frag.h b/cube/android/include/cube.frag.h index 1e6fd4af..1e6fd4af 100644 --- a/demos/android/include/cube.frag.h +++ b/cube/android/include/cube.frag.h diff --git a/demos/android/include/cube.frag.inc b/cube/android/include/cube.frag.inc index e80adbb7..e80adbb7 100644 --- a/demos/android/include/cube.frag.inc +++ b/cube/android/include/cube.frag.inc diff --git a/demos/android/include/cube.vert.h b/cube/android/include/cube.vert.h index 4e349e78..4e349e78 100644 --- a/demos/android/include/cube.vert.h +++ b/cube/android/include/cube.vert.h diff --git a/demos/android/include/cube.vert.inc b/cube/android/include/cube.vert.inc index bbfc1928..bbfc1928 100644 --- a/demos/android/include/cube.vert.inc +++ b/cube/android/include/cube.vert.inc diff --git a/demos/android/include/lunarg.ppm.h b/cube/android/include/lunarg.ppm.h index 67a874be..67a874be 100644 --- a/demos/android/include/lunarg.ppm.h +++ b/cube/android/include/lunarg.ppm.h diff --git a/demos/android/jni/Android.mk b/cube/android/jni/Android.mk index 66018314..66018314 100644 --- a/demos/android/jni/Android.mk +++ b/cube/android/jni/Android.mk diff --git a/demos/android/jni/Application.mk b/cube/android/jni/Application.mk index e215f210..e215f210 100644 --- a/demos/android/jni/Application.mk +++ b/cube/android/jni/Application.mk diff --git a/demos/cube.c b/cube/cube.c index 154019e8..154019e8 100644 --- a/demos/cube.c +++ b/cube/cube.c diff --git a/demos/cube.cpp b/cube/cube.cpp index a7218617..a7218617 100644 --- a/demos/cube.cpp +++ b/cube/cube.cpp diff --git a/demos/cube.frag b/cube/cube.frag index 5bf6507a..5bf6507a 100644 --- a/demos/cube.frag +++ b/cube/cube.frag diff --git a/demos/cube.vcxproj.user b/cube/cube.vcxproj.user index 591cdd91..591cdd91 100755 --- a/demos/cube.vcxproj.user +++ b/cube/cube.vcxproj.user diff --git a/demos/cube.vert b/cube/cube.vert index 63380326..63380326 100644 --- a/demos/cube.vert +++ b/cube/cube.vert diff --git a/demos/gettime.h b/cube/gettime.h index a4265cdc..a4265cdc 100644 --- a/demos/gettime.h +++ b/cube/gettime.h diff --git a/demos/linmath.h b/cube/linmath.h index b4d386cc..b4d386cc 100644 --- a/demos/linmath.h +++ b/cube/linmath.h diff --git a/demos/lunarg.ppm b/cube/lunarg.ppm index 468b4873..468b4873 100644 --- a/demos/lunarg.ppm +++ b/cube/lunarg.ppm diff --git a/demos/macOS/common.cmake b/cube/macOS/common.cmake index 6a35db95..6a35db95 100644 --- a/demos/macOS/common.cmake +++ b/cube/macOS/common.cmake diff --git a/demos/macOS/cube/AppDelegate.h b/cube/macOS/cube/AppDelegate.h index 0b1dfe49..0b1dfe49 100644 --- a/demos/macOS/cube/AppDelegate.h +++ b/cube/macOS/cube/AppDelegate.h diff --git a/demos/macOS/cube/AppDelegate.m b/cube/macOS/cube/AppDelegate.m index 2a7bcaff..2a7bcaff 100644 --- a/demos/macOS/cube/AppDelegate.m +++ b/cube/macOS/cube/AppDelegate.m diff --git a/demos/macOS/cube/DemoViewController.h b/cube/macOS/cube/DemoViewController.h index 7f90cc7e..7f90cc7e 100644 --- a/demos/macOS/cube/DemoViewController.h +++ b/cube/macOS/cube/DemoViewController.h diff --git a/demos/macOS/cube/DemoViewController.m b/cube/macOS/cube/DemoViewController.m index eb28ad57..eb28ad57 100644 --- a/demos/macOS/cube/DemoViewController.m +++ b/cube/macOS/cube/DemoViewController.m diff --git a/demos/macOS/cube/Info.plist b/cube/macOS/cube/Info.plist index b7869d6e..b7869d6e 100644 --- a/demos/macOS/cube/Info.plist +++ b/cube/macOS/cube/Info.plist diff --git a/demos/macOS/cube/Resources/LunarGIcon.icns b/cube/macOS/cube/Resources/LunarGIcon.icns Binary files differindex 640b756f..640b756f 100644 --- a/demos/macOS/cube/Resources/LunarGIcon.icns +++ b/cube/macOS/cube/Resources/LunarGIcon.icns diff --git a/demos/macOS/cube/Resources/Main.storyboard b/cube/macOS/cube/Resources/Main.storyboard index d21c1493..d21c1493 100644 --- a/demos/macOS/cube/Resources/Main.storyboard +++ b/cube/macOS/cube/Resources/Main.storyboard diff --git a/demos/macOS/cube/cube.cmake b/cube/macOS/cube/cube.cmake index b298933b..b298933b 100644 --- a/demos/macOS/cube/cube.cmake +++ b/cube/macOS/cube/cube.cmake diff --git a/demos/macOS/cube/main.m b/cube/macOS/cube/main.m index cf9e0d89..cf9e0d89 100644 --- a/demos/macOS/cube/main.m +++ b/cube/macOS/cube/main.m diff --git a/demos/macOS/cubepp/AppDelegate.h b/cube/macOS/cubepp/AppDelegate.h index 0b1dfe49..0b1dfe49 100644 --- a/demos/macOS/cubepp/AppDelegate.h +++ b/cube/macOS/cubepp/AppDelegate.h diff --git a/demos/macOS/cubepp/AppDelegate.mm b/cube/macOS/cubepp/AppDelegate.mm index 2a7bcaff..2a7bcaff 100644 --- a/demos/macOS/cubepp/AppDelegate.mm +++ b/cube/macOS/cubepp/AppDelegate.mm diff --git a/demos/macOS/cubepp/DemoViewController.h b/cube/macOS/cubepp/DemoViewController.h index 7f90cc7e..7f90cc7e 100644 --- a/demos/macOS/cubepp/DemoViewController.h +++ b/cube/macOS/cubepp/DemoViewController.h diff --git a/demos/macOS/cubepp/DemoViewController.mm b/cube/macOS/cubepp/DemoViewController.mm index 049ec6b6..049ec6b6 100644 --- a/demos/macOS/cubepp/DemoViewController.mm +++ b/cube/macOS/cubepp/DemoViewController.mm diff --git a/demos/macOS/cubepp/Info.plist b/cube/macOS/cubepp/Info.plist index e8a276ce..e8a276ce 100644 --- a/demos/macOS/cubepp/Info.plist +++ b/cube/macOS/cubepp/Info.plist diff --git a/demos/macOS/cubepp/Resources/LunarGIcon.icns b/cube/macOS/cubepp/Resources/LunarGIcon.icns Binary files differindex 640b756f..640b756f 100644 --- a/demos/macOS/cubepp/Resources/LunarGIcon.icns +++ b/cube/macOS/cubepp/Resources/LunarGIcon.icns diff --git a/demos/macOS/cubepp/Resources/Main.storyboard b/cube/macOS/cubepp/Resources/Main.storyboard index d21c1493..d21c1493 100644 --- a/demos/macOS/cubepp/Resources/Main.storyboard +++ b/cube/macOS/cubepp/Resources/Main.storyboard diff --git a/demos/macOS/cubepp/cubepp.cmake b/cube/macOS/cubepp/cubepp.cmake index 874ed25f..874ed25f 100644 --- a/demos/macOS/cubepp/cubepp.cmake +++ b/cube/macOS/cubepp/cubepp.cmake diff --git a/demos/macOS/cubepp/main.mm b/cube/macOS/cubepp/main.mm index cf9e0d89..cf9e0d89 100644 --- a/demos/macOS/cubepp/main.mm +++ b/cube/macOS/cubepp/main.mm diff --git a/demos/object_type_string_helper.h b/cube/object_type_string_helper.h index eb79ba38..eb79ba38 100644 --- a/demos/object_type_string_helper.h +++ b/cube/object_type_string_helper.h diff --git a/demos/macOS/vulkaninfo/Info.plist b/vulkaninfo/macOS/Info.plist index 337223c2..337223c2 100644 --- a/demos/macOS/vulkaninfo/Info.plist +++ b/vulkaninfo/macOS/Info.plist diff --git a/demos/macOS/vulkaninfo/Resources/LunarGIcon.icns b/vulkaninfo/macOS/Resources/LunarGIcon.icns Binary files differindex 640b756f..640b756f 100644 --- a/demos/macOS/vulkaninfo/Resources/LunarGIcon.icns +++ b/vulkaninfo/macOS/Resources/LunarGIcon.icns diff --git a/demos/macOS/vulkaninfo/vulkaninfo.cmake b/vulkaninfo/macOS/vulkaninfo.cmake index d5da172c..d5da172c 100644 --- a/demos/macOS/vulkaninfo/vulkaninfo.cmake +++ b/vulkaninfo/macOS/vulkaninfo.cmake diff --git a/demos/macOS/vulkaninfo/vulkaninfo.sh b/vulkaninfo/macOS/vulkaninfo.sh index 7387d880..7387d880 100755 --- a/demos/macOS/vulkaninfo/vulkaninfo.sh +++ b/vulkaninfo/macOS/vulkaninfo.sh |
