* CMake: Fix SAMPLES_BUILD and TESTS_BUILD
* CMake: Enable sample build on linux
* samples: Use glfw for window creation
* samples: Fix include order
* samples: Support new window handling
* samples: Add build target for util
* samples: Update CMake scripts to use util target
* samples: Add WindowData to manage unique window
* samples: Surface handling using WIndowData
* sampels: Remove call for vk::su::destroyWindow()
* CMake: FIx more options
* samples: Build SurfaceCapabilities only on WIN32
* samples: Fixed RayTracing sample to build on Linux
* samples: Fix wrong check on SurfaceProtectedCapabilitiesKHR
This also fixes compilation with MinGW gcc/clang
* CMake: check CMAKE_SYSTEM_NAME for Linux samples
* CMake: Add source group for utils
* samples: Fix potential bugs
* samples: Reduce warnings on gcc/clang
* samples: Fix missmatched new/free() which is UB
* samples: Add missing initialization for dynamic dispatcher
* samples: Remove unnecessary dispacther construct
Co-authored-by: Andreas Süßenbach <asuessenbach@nvidia.com>
new:
- InstanceVersion: print out the instance version
- PhysicalDeviceExtensions: print out the device specific extensions
- PhysicalDeviceFeatures: print out the device specific features
- PhysicalDeviceGroups: print out the device groups (interesting with SLI)
- PhysicalDeviceMemoryProperties: print out the device specific memory properties
- PhysicalDeviceQueueFamilyProperties: print out the device specific queue family properties
- SurfaceCapabilities: print out the surface specific capabilities
- SurfaceFormats: print out the supported surface specific formats
improved:
- InstanceExtensionProperties: print out the instance extensions alphabetically
- InstanceLayerProperties: removed an unused local function
- RayTracing: improved fence usage