Refactor the CMakeLists for all the samples; use vulkan.hpp/vulkan_raii.hpp as precompiled header.

This commit is contained in:
asuessenbach 2022-08-10 11:19:06 +02:00
parent 1a64b5fcc0
commit 5480d192f5
200 changed files with 299 additions and 2068 deletions

View File

@ -39,6 +39,7 @@ jobs:
-DTESTS_BUILD=ON -DTESTS_BUILD=ON
-DTESTS_BUILD_ONLY_DYNAMIC=ON -DTESTS_BUILD_ONLY_DYNAMIC=ON
-DTESTS_BUILD_WITH_LOCAL_VULKAN_HPP=ON -DTESTS_BUILD_WITH_LOCAL_VULKAN_HPP=ON
-DVULKAN_HPP_PRECOMPILE=OFF
-DVULKAN_HPP_RUN_GENERATOR=ON -DVULKAN_HPP_RUN_GENERATOR=ON
-DCMAKE_CXX_STANDARD=${{matrix.cxx_standard}} -DCMAKE_CXX_STANDARD=${{matrix.cxx_standard}}
-DCMAKE_BUILD_TYPE=${{matrix.build_type}} -DCMAKE_BUILD_TYPE=${{matrix.build_type}}

View File

@ -149,6 +149,101 @@ if (VULKAN_HPP_RUN_GENERATOR)
DEPENDS "${vulkan_hpp}" "${vk_spec}") DEPENDS "${vulkan_hpp}" "${vk_spec}")
endif() endif()
option (VULKAN_HPP_PRECOMPILE "Precompile vulkan.hpp and vulkan_raii.hpp for sample builds" ON)
function(vulkan_hpp__setup_sample)
set(options)
set(oneValueArgs FOLDER NAME)
set(multiValueArgs HEADERS INCLUDE_DIRS LIBS PCH SOURCES)
cmake_parse_arguments(TARGET "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
if(${TARGET_NAME} STREQUAL "")
message(FATAL_ERROR "NAME must be defined in vulkan_hpp__setup_sample")
endif()
project(${TARGET_NAME})
add_executable(${TARGET_NAME} ${TARGET_HEADERS} ${TARGET_SOURCES})
if (TARGET_INCLUDE_DIRS)
target_include_directories(${TARGET_NAME} PUBLIC ${TARGET_INCLUDE_DIRS})
endif()
if (TARGET_FOLDER)
set_target_properties(${TARGET_NAME} PROPERTIES FOLDER "${TARGET_FOLDER}")
endif()
if (VULKAN_HPP_PRECOMPILE AND TARGET_PCH)
target_precompile_headers(${TARGET_NAME} PRIVATE "${TARGET_PCH}")
endif()
if (TARGET_LIBS)
target_link_libraries(${TARGET_NAME} PRIVATE "${TARGET_LIBS}")
endif()
endfunction()
function(vulkan_hpp__setup_sample_static)
set(options)
set(oneValueArgs NAME)
set(multiValueArgs)
cmake_parse_arguments(TARGET "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
if(NOT SAMPLES_BUILD_ONLY_DYNAMIC)
find_package(Vulkan REQUIRED)
vulkan_hpp__setup_sample(
NAME ${TARGET_NAME}
FOLDER Samples
PCH <vulkan/vulkan.hpp>
SOURCES ${TARGET_NAME}.cpp
LIBS ${Vulkan_LIBRARIES})
target_compile_definitions(01_InitInstance PUBLIC VULKAN_HPP_DISPATCH_LOADER_DYNAMIC=0)
endif()
endfunction()
function(vulkan_hpp__setup_sample_dynamic)
set(options)
set(oneValueArgs NAME)
set(multiValueArgs HEADERS INCLUDE_DIRS SOURCES)
cmake_parse_arguments(TARGET "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
if (NOT TARGET_SOURCES)
set(TARGET_SOURCES ${TARGET_NAME}.cpp)
endif()
vulkan_hpp__setup_sample(
NAME ${TARGET_NAME}
FOLDER Samples
PCH <vulkan/vulkan.hpp>
INCLUDE_DIRS ${TARGET_INCLUDE_DIRS}
HEADERS ${TARGET_HEADERS}
SOURCES ${TARGET_SOURCES}
LIBS utils)
endfunction()
function(vulkan_hpp__setup_sample_raii)
set(options)
set(oneValueArgs NAME)
set(multiValueArgs HEADERS INCLUDE_DIRS SOURCES)
cmake_parse_arguments(TARGET "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
if (NOT TARGET_SOURCES)
set(TARGET_SOURCES ${TARGET_NAME}.cpp)
endif()
vulkan_hpp__setup_sample(
NAME RAII_${TARGET_NAME}
FOLDER RAII_Samples
PCH <vulkan/vulkan_raii.hpp>
INCLUDE_DIRS ${TARGET_INCLUDE_DIRS}
HEADERS ${TARGET_HEADERS}
SOURCES ${TARGET_SOURCES}
LIBS utils)
endfunction()
option (SAMPLES_BUILD "Build samples" OFF) option (SAMPLES_BUILD "Build samples" OFF)
if (SAMPLES_BUILD) if (SAMPLES_BUILD)
# external libraries # external libraries

View File

@ -13,10 +13,9 @@
// limitations under the License. // limitations under the License.
// //
// VulkanHpp Samples : 01_InitInstanceRAII // VulkanHpp Samples : 01_InitInstanceRAII
// Create and destroy a vk::UniqueInstance // Create and destroy a vk::raii::Instance
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "vulkan/vulkan_raii.hpp"
#include <iostream> #include <iostream>

View File

@ -14,26 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
if(NOT SAMPLES_BUILD_ONLY_DYNAMIC) vulkan_hpp__setup_sample_raii( NAME 01_InitInstance )
project(RAII_01_InitInstance)
set(HEADERS
)
set(SOURCES
01_InitInstance.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_01_InitInstance
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_01_InitInstance PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_01_InitInstance PRIVATE utils)
endif()

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_02_EnumerateDevices) vulkan_hpp__setup_sample_raii( NAME 02_EnumerateDevices )
set(HEADERS
)
set(SOURCES
02_EnumerateDevices.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_02_EnumerateDevices
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_02_EnumerateDevices PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_02_EnumerateDevices PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_03_InitDevice) vulkan_hpp__setup_sample_raii( NAME 03_InitDevice )
set(HEADERS
)
set(SOURCES
03_InitDevice.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_03_InitDevice
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_03_InitDevice PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_03_InitDevice PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_04_InitCommandBuffer) vulkan_hpp__setup_sample_raii( NAME 04_InitCommandBuffer )
set(HEADERS
)
set(SOURCES
04_InitCommandBuffer.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_04_InitCommandBuffer
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_04_InitCommandBuffer PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_04_InitCommandBuffer PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_05_InitSwapchain) vulkan_hpp__setup_sample_raii( NAME 05_InitSwapchain )
set(HEADERS
)
set(SOURCES
05_InitSwapchain.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_05_InitSwapchain
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_05_InitSwapchain PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_05_InitSwapchain PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_06_InitDepthBuffer) vulkan_hpp__setup_sample_raii( NAME 06_InitDepthBuffer )
set(HEADERS
)
set(SOURCES
06_InitDepthBuffer.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_06_InitDepthBuffer
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_06_InitDepthBuffer PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_06_InitDepthBuffer PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_07_InitUniformBuffer) vulkan_hpp__setup_sample_raii( NAME 07_InitUniformBuffer )
set(HEADERS
)
set(SOURCES
07_InitUniformBuffer.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_07_InitUniformBuffer
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_07_InitUniformBuffer PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_07_InitUniformBuffer PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_08_InitPipelineLayout) vulkan_hpp__setup_sample_raii( NAME 08_InitPipelineLayout )
set(HEADERS
)
set(SOURCES
08_InitPipelineLayout.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_08_InitPipelineLayout
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_08_InitPipelineLayout PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_08_InitPipelineLayout PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_09_InitDescriptorSet) vulkan_hpp__setup_sample_raii( NAME 09_InitDescriptorSet )
set(HEADERS
)
set(SOURCES
09_InitDescriptorSet.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_09_InitDescriptorSet
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_09_InitDescriptorSet PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_09_InitDescriptorSet PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_10_InitRenderPass) vulkan_hpp__setup_sample_raii( NAME 10_InitRenderPass )
set(HEADERS
)
set(SOURCES
10_InitRenderPass.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_10_InitRenderPass
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_10_InitRenderPass PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_10_InitRenderPass PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_11_InitShaders) vulkan_hpp__setup_sample_raii( NAME 11_InitShaders )
set(HEADERS
)
set(SOURCES
11_InitShaders.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_11_InitShaders
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_11_InitShaders PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_11_InitShaders PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_12_InitFrameBuffers) vulkan_hpp__setup_sample_raii( NAME 12_InitFrameBuffers )
set(HEADERS
)
set(SOURCES
12_InitFrameBuffers.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_12_InitFrameBuffers
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_12_InitFrameBuffers PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_12_InitFrameBuffers PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_13_InitVertexBuffer) vulkan_hpp__setup_sample_raii( NAME 13_InitVertexBuffer )
set(HEADERS
)
set(SOURCES
13_InitVertexBuffer.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_13_InitVertexBuffer
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_13_InitVertexBuffer PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_13_InitVertexBuffer PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_14_InitPipeline) vulkan_hpp__setup_sample_raii( NAME 14_InitPipeline )
set(HEADERS
)
set(SOURCES
14_InitPipeline.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_14_InitPipeline
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_14_InitPipeline PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_14_InitPipeline PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_15_DrawCube) vulkan_hpp__setup_sample_raii( NAME 15_DrawCube )
set(HEADERS
)
set(SOURCES
15_DrawCube.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_15_DrawCube
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_15_DrawCube PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_15_DrawCube PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_16_Vulkan_1_1) vulkan_hpp__setup_sample_raii( NAME 16_Vulkan_1_1 )
set(HEADERS
)
set(SOURCES
16_Vulkan_1_1.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_16_Vulkan_1_1
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_16_Vulkan_1_1 PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_16_Vulkan_1_1 PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_CopyBlitImage) vulkan_hpp__setup_sample_raii( NAME CopyBlitImage )
set(HEADERS
)
set(SOURCES
CopyBlitImage.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_CopyBlitImage
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_CopyBlitImage PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_CopyBlitImage PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_CreateDebugUtilsMessenger) vulkan_hpp__setup_sample_raii( NAME CreateDebugUtilsMessenger )
set(HEADERS
)
set(SOURCES
CreateDebugUtilsMessenger.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_CreateDebugUtilsMessenger
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_CreateDebugUtilsMessenger PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_CreateDebugUtilsMessenger PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_DebugUtilsObjectName) vulkan_hpp__setup_sample_raii( NAME DebugUtilsObjectName )
set(HEADERS
)
set(SOURCES
DebugUtilsObjectName.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_DebugUtilsObjectName
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_DebugUtilsObjectName PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_DebugUtilsObjectName PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_DrawTexturedCube) vulkan_hpp__setup_sample_raii( NAME DrawTexturedCube )
set(HEADERS
)
set(SOURCES
DrawTexturedCube.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_DrawTexturedCube
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_DrawTexturedCube PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_DrawTexturedCube PRIVATE utils)

View File

@ -20,7 +20,6 @@
#include "../utils/shaders.hpp" #include "../utils/shaders.hpp"
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "SPIRV/GlslangToSpv.h" #include "SPIRV/GlslangToSpv.h"
#include "vulkan/vulkan_raii.hpp"
#include <iostream> #include <iostream>
#include <thread> #include <thread>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_DynamicUniform) vulkan_hpp__setup_sample_raii( NAME DynamicUniform )
set(HEADERS
)
set(SOURCES
DynamicUniform.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_DynamicUniform
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_DynamicUniform PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_DynamicUniform PRIVATE utils)

View File

@ -24,7 +24,6 @@
#include "../utils/shaders.hpp" #include "../utils/shaders.hpp"
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "SPIRV/GlslangToSpv.h" #include "SPIRV/GlslangToSpv.h"
#include "vulkan/vulkan_raii.hpp"
#include <iostream> #include <iostream>
#include <thread> #include <thread>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_EnableValidationWithCallback) vulkan_hpp__setup_sample_raii( NAME EnableValidationWithCallback )
set(HEADERS
)
set(SOURCES
EnableValidationWithCallback.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_EnableValidationWithCallback
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_EnableValidationWithCallback PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_EnableValidationWithCallback PRIVATE utils)

View File

@ -30,7 +30,6 @@
#include <algorithm> #include <algorithm>
#include <iostream> #include <iostream>
#include <sstream> #include <sstream>
#include <vulkan/vulkan_raii.hpp>
#include <vulkan/vulkan_to_string.hpp> #include <vulkan/vulkan_to_string.hpp>
static char const * AppName = "EnableValidationWithCallback"; static char const * AppName = "EnableValidationWithCallback";

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_EnumerateDevicesAdvanced) vulkan_hpp__setup_sample_raii( NAME EnumerateDevicesAdvanced )
set(HEADERS
)
set(SOURCES
EnumerateDevicesAdvanced.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_EnumerateDevicesAdvanced
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_EnumerateDevicesAdvanced PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_EnumerateDevicesAdvanced PRIVATE utils)

View File

@ -19,7 +19,6 @@
#include <iomanip> #include <iomanip>
#include <iostream> #include <iostream>
#include <vulkan/vulkan_raii.hpp>
#include <vulkan/vulkan_to_string.hpp> #include <vulkan/vulkan_to_string.hpp>
static char const * AppName = "EnumerateDevicesAdvanced"; static char const * AppName = "EnumerateDevicesAdvanced";

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_Events) vulkan_hpp__setup_sample_raii( NAME Events )
set(HEADERS
)
set(SOURCES
Events.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_Events
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_Events PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_Events PRIVATE utils)

View File

@ -16,7 +16,6 @@
// Use basic events // Use basic events
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "vulkan/vulkan_raii.hpp"
#include <iostream> #include <iostream>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_ImmutableSampler) vulkan_hpp__setup_sample_raii( NAME ImmutableSampler )
set(HEADERS
)
set(SOURCES
ImmutableSampler.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_ImmutableSampler
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_ImmutableSampler PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_ImmutableSampler PRIVATE utils)

View File

@ -32,7 +32,6 @@
#include "../utils/shaders.hpp" #include "../utils/shaders.hpp"
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "SPIRV/GlslangToSpv.h" #include "SPIRV/GlslangToSpv.h"
#include "vulkan/vulkan_raii.hpp"
#include <iostream> #include <iostream>
#include <thread> #include <thread>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_InitTexture) vulkan_hpp__setup_sample_raii( NAME InitTexture )
set(HEADERS
)
set(SOURCES
InitTexture.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_InitTexture
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_InitTexture PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_InitTexture PRIVATE utils)

View File

@ -30,7 +30,6 @@
#include "../utils/shaders.hpp" #include "../utils/shaders.hpp"
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "SPIRV/GlslangToSpv.h" #include "SPIRV/GlslangToSpv.h"
#include "vulkan/vulkan_raii.hpp"
#include <iostream> #include <iostream>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_InputAttachment) vulkan_hpp__setup_sample_raii( NAME InputAttachment )
set(HEADERS
)
set(SOURCES
InputAttachment.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_InputAttachment
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_InputAttachment PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_InputAttachment PRIVATE utils)

View File

@ -30,7 +30,6 @@
#include "../utils/shaders.hpp" #include "../utils/shaders.hpp"
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "SPIRV/GlslangToSpv.h" #include "SPIRV/GlslangToSpv.h"
#include "vulkan/vulkan_raii.hpp"
#include <iostream> #include <iostream>
#include <thread> #include <thread>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_InstanceExtensionProperties) vulkan_hpp__setup_sample_raii( NAME InstanceExtensionProperties )
set(HEADERS
)
set(SOURCES
InstanceExtensionProperties.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_InstanceExtensionProperties
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_InstanceExtensionProperties PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_InstanceExtensionProperties PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_InstanceLayerExtensionProperties) vulkan_hpp__setup_sample_raii( NAME InstanceLayerExtensionProperties )
set(HEADERS
)
set(SOURCES
InstanceLayerExtensionProperties.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_InstanceLayerExtensionProperties
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_InstanceLayerExtensionProperties PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_InstanceLayerExtensionProperties PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_InstanceLayerProperties) vulkan_hpp__setup_sample_raii( NAME InstanceLayerProperties )
set(HEADERS
)
set(SOURCES
InstanceLayerProperties.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_InstanceLayerProperties
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_InstanceLayerProperties PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_InstanceLayerProperties PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_InstanceVersion) vulkan_hpp__setup_sample_raii( NAME InstanceVersion )
set(HEADERS
)
set(SOURCES
InstanceVersion.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_InstanceVersion
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_InstanceVersion PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_InstanceVersion PRIVATE utils)

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_MultipleSets) vulkan_hpp__setup_sample_raii( NAME MultipleSets )
set(HEADERS
)
set(SOURCES
MultipleSets.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_MultipleSets
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_MultipleSets PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_MultipleSets PRIVATE utils)

View File

@ -32,7 +32,6 @@
#include "../utils/shaders.hpp" #include "../utils/shaders.hpp"
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "SPIRV/GlslangToSpv.h" #include "SPIRV/GlslangToSpv.h"
#include "vulkan/vulkan_raii.hpp"
#include <iostream> #include <iostream>
#include <thread> #include <thread>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_OcclusionQuery) vulkan_hpp__setup_sample_raii( NAME OcclusionQuery )
set(HEADERS
)
set(SOURCES
OcclusionQuery.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_OcclusionQuery
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_OcclusionQuery PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_OcclusionQuery PRIVATE utils)

View File

@ -20,7 +20,6 @@
#include "../utils/shaders.hpp" #include "../utils/shaders.hpp"
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "SPIRV/GlslangToSpv.h" #include "SPIRV/GlslangToSpv.h"
#include "vulkan/vulkan_raii.hpp"
#include <iostream> #include <iostream>
#include <thread> #include <thread>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_PhysicalDeviceExtensions) vulkan_hpp__setup_sample_raii( NAME PhysicalDeviceExtensions )
set(HEADERS
)
set(SOURCES
PhysicalDeviceExtensions.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_PhysicalDeviceExtensions
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_PhysicalDeviceExtensions PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_PhysicalDeviceExtensions PRIVATE utils)

View File

@ -16,7 +16,6 @@
// Get extension properties per physical device. // Get extension properties per physical device.
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "vulkan/vulkan.hpp"
#include <vector> #include <vector>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_PhysicalDeviceFeatures) vulkan_hpp__setup_sample_raii( NAME PhysicalDeviceFeatures )
set(HEADERS
)
set(SOURCES
PhysicalDeviceFeatures.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_PhysicalDeviceFeatures
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_PhysicalDeviceFeatures PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_PhysicalDeviceFeatures PRIVATE utils)

View File

@ -25,7 +25,6 @@
#endif #endif
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "vulkan/vulkan.hpp"
#include <vector> #include <vector>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_PhysicalDeviceGroups) vulkan_hpp__setup_sample_raii( NAME PhysicalDeviceGroups )
set(HEADERS
)
set(SOURCES
PhysicalDeviceGroups.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_PhysicalDeviceGroups
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_PhysicalDeviceGroups PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_PhysicalDeviceGroups PRIVATE utils)

View File

@ -16,7 +16,6 @@
// Get the PhysicalDeviceGroups. // Get the PhysicalDeviceGroups.
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "vulkan/vulkan.hpp"
#include <vector> #include <vector>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_PhysicalDeviceMemoryProperties) vulkan_hpp__setup_sample_raii( NAME PhysicalDeviceMemoryProperties )
set(HEADERS
)
set(SOURCES
PhysicalDeviceMemoryProperties.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_PhysicalDeviceMemoryProperties
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_PhysicalDeviceMemoryProperties PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_PhysicalDeviceMemoryProperties PRIVATE utils)

View File

@ -19,7 +19,6 @@
#include <sstream> #include <sstream>
#include <vector> #include <vector>
#include <vulkan/vulkan.hpp>
#include <vulkan/vulkan_to_string.hpp> #include <vulkan/vulkan_to_string.hpp>
static char const * AppName = "PhysicalDeviceMemoryProperties"; static char const * AppName = "PhysicalDeviceMemoryProperties";

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_PhysicalDeviceProperties) vulkan_hpp__setup_sample_raii( NAME PhysicalDeviceProperties )
set(HEADERS
)
set(SOURCES
PhysicalDeviceProperties.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_PhysicalDeviceProperties
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_PhysicalDeviceProperties PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_PhysicalDeviceProperties PRIVATE utils)

View File

@ -20,7 +20,6 @@
#include <iomanip> #include <iomanip>
#include <sstream> #include <sstream>
#include <vector> #include <vector>
#include <vulkan/vulkan.hpp>
#include <vulkan/vulkan_to_string.hpp> #include <vulkan/vulkan_to_string.hpp>
static char const * AppName = "PhysicalDeviceProperties"; static char const * AppName = "PhysicalDeviceProperties";

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_PhysicalDeviceQueueFamilyProperties) vulkan_hpp__setup_sample_raii( NAME PhysicalDeviceQueueFamilyProperties )
set(HEADERS
)
set(SOURCES
PhysicalDeviceQueueFamilyProperties.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_PhysicalDeviceQueueFamilyProperties
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_PhysicalDeviceQueueFamilyProperties PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_PhysicalDeviceQueueFamilyProperties PRIVATE utils)

View File

@ -20,7 +20,6 @@
#include <iomanip> #include <iomanip>
#include <sstream> #include <sstream>
#include <vector> #include <vector>
#include <vulkan/vulkan.hpp>
#include <vulkan/vulkan_to_string.hpp> #include <vulkan/vulkan_to_string.hpp>
static char const * AppName = "PhysicalDeviceQueueFamilyProperties"; static char const * AppName = "PhysicalDeviceQueueFamilyProperties";

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_PipelineCache) vulkan_hpp__setup_sample_raii( NAME PipelineCache )
set(HEADERS
)
set(SOURCES
PipelineCache.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_PipelineCache
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_PipelineCache PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_PipelineCache PRIVATE utils)

View File

@ -29,7 +29,6 @@
#include "../utils/shaders.hpp" #include "../utils/shaders.hpp"
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "SPIRV/GlslangToSpv.h" #include "SPIRV/GlslangToSpv.h"
#include "vulkan/vulkan.hpp"
#include <fstream> #include <fstream>
#include <iomanip> #include <iomanip>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_PipelineDerivative) vulkan_hpp__setup_sample_raii( NAME PipelineDerivative )
set(HEADERS
)
set(SOURCES
PipelineDerivative.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_PipelineDerivative
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_PipelineDerivative PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_PipelineDerivative PRIVATE utils)

View File

@ -29,7 +29,6 @@
#include "../utils/shaders.hpp" #include "../utils/shaders.hpp"
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "SPIRV/GlslangToSpv.h" #include "SPIRV/GlslangToSpv.h"
#include "vulkan/vulkan.hpp"
#include <thread> #include <thread>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_PushConstants) vulkan_hpp__setup_sample_raii( NAME PushConstants )
set(HEADERS
)
set(SOURCES
PushConstants.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_PushConstants
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_PushConstants PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_PushConstants PRIVATE utils)

View File

@ -29,7 +29,6 @@
#include "../utils/shaders.hpp" #include "../utils/shaders.hpp"
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "SPIRV/GlslangToSpv.h" #include "SPIRV/GlslangToSpv.h"
#include "vulkan/vulkan.hpp"
#include <iostream> #include <iostream>
#include <thread> #include <thread>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_PushDescriptors) vulkan_hpp__setup_sample_raii( NAME PushDescriptors )
set(HEADERS
)
set(SOURCES
PushDescriptors.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_PushDescriptors
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_PushDescriptors PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_PushDescriptors PRIVATE utils)

View File

@ -21,7 +21,6 @@
#include "../utils/shaders.hpp" #include "../utils/shaders.hpp"
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "SPIRV/GlslangToSpv.h" #include "SPIRV/GlslangToSpv.h"
#include "vulkan/vulkan.hpp"
#include <iostream> #include <iostream>
#include <thread> #include <thread>

View File

@ -14,30 +14,15 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_RayTracing) vulkan_hpp__setup_sample_raii(
NAME RayTracing
set(HEADERS INCLUDE_DIRS
CameraManipulator.hpp ${CMAKE_SOURCE_DIR}/samples/RayTracing/common
) ${CMAKE_SOURCE_DIR}/samples/RayTracing/vulkannv
${CMAKE_SOURCE_DIR}/stb
set(SOURCES ${CMAKE_SOURCE_DIR}/tinyobjloader
CameraManipulator.cpp HEADERS
RayTracing.cpp CameraManipulator.hpp
) SOURCES
CameraManipulator.cpp
source_group(headers FILES ${HEADERS}) RayTracing.cpp)
source_group(sources FILES ${SOURCES})
add_executable(RAII_RayTracing
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_RayTracing PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_RayTracing PRIVATE utils)
target_include_directories(RAII_RayTracing PUBLIC
${CMAKE_SOURCE_DIR}/samples/RayTracing/common
${CMAKE_SOURCE_DIR}/samples/RayTracing/vulkannv
${CMAKE_SOURCE_DIR}/stb
${CMAKE_SOURCE_DIR}/tinyobjloader
)

View File

@ -28,8 +28,6 @@
// unknow compiler... just ignore the warnings for yourselves ;) // unknow compiler... just ignore the warnings for yourselves ;)
#endif #endif
#define VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL 0
// clang-format off // clang-format off
// we need to include vulkan.hpp before glfw3.h, so stop clang-format to reorder them // we need to include vulkan.hpp before glfw3.h, so stop clang-format to reorder them
#include <vulkan/vulkan.hpp> #include <vulkan/vulkan.hpp>
@ -691,7 +689,27 @@ int main( int /*argc*/, char ** /*argv*/ )
#if !defined( NDEBUG ) #if !defined( NDEBUG )
vk::raii::DebugUtilsMessengerEXT debugUtilsMessenger( instance, vk::su::makeDebugUtilsMessengerCreateInfoEXT() ); vk::raii::DebugUtilsMessengerEXT debugUtilsMessenger( instance, vk::su::makeDebugUtilsMessengerCreateInfoEXT() );
#endif #endif
vk::raii::PhysicalDevice physicalDevice = vk::raii::PhysicalDevices( instance ).front();
vk::raii::PhysicalDevice physicalDevice( nullptr );
vk::raii::PhysicalDevices physicalDevices( instance );
for ( auto & pd : physicalDevices )
{
std::vector<vk::ExtensionProperties> ep = pd.enumerateDeviceExtensionProperties();
if ( std::find_if( ep.cbegin(),
ep.cend(),
[]( vk::ExtensionProperties const & prop )
{ return strcmp( prop.extensionName, VK_NV_RAY_TRACING_EXTENSION_NAME ) == 0; } ) !=
ep.cend() )
{
physicalDevice = pd;
break;
}
}
if ( !*physicalDevice )
{
std::cerr << AppName << ": can't find a PhysicalDevice supporting extension <" << VK_NV_RAY_TRACING_EXTENSION_NAME << ">" << std::endl;
return 1;
}
std::vector<vk::ExtensionProperties> extensionProperties = physicalDevice.enumerateDeviceExtensionProperties(); std::vector<vk::ExtensionProperties> extensionProperties = physicalDevice.enumerateDeviceExtensionProperties();
assert( vk::su::contains( extensionProperties, VK_KHR_SWAPCHAIN_EXTENSION_NAME ) ); assert( vk::su::contains( extensionProperties, VK_KHR_SWAPCHAIN_EXTENSION_NAME ) );

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_SecondaryCommandBuffer) vulkan_hpp__setup_sample_raii( NAME SecondaryCommandBuffer )
set(HEADERS
)
set(SOURCES
SecondaryCommandBuffer.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_SecondaryCommandBuffer
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_SecondaryCommandBuffer PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_SecondaryCommandBuffer PRIVATE utils)

View File

@ -30,7 +30,6 @@
#include "../utils/shaders.hpp" #include "../utils/shaders.hpp"
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "SPIRV/GlslangToSpv.h" #include "SPIRV/GlslangToSpv.h"
#include "vulkan/vulkan.hpp"
#include <iostream> #include <iostream>
#include <thread> #include <thread>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_SeparateImageSampler) vulkan_hpp__setup_sample_raii( NAME SeparateImageSampler )
set(HEADERS
)
set(SOURCES
SeparateImageSampler.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_SeparateImageSampler
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_SeparateImageSampler PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_SeparateImageSampler PRIVATE utils)

View File

@ -29,7 +29,6 @@
#include "../utils/shaders.hpp" #include "../utils/shaders.hpp"
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "SPIRV/GlslangToSpv.h" #include "SPIRV/GlslangToSpv.h"
#include "vulkan/vulkan.hpp"
#include <iostream> #include <iostream>
#include <thread> #include <thread>

View File

@ -14,26 +14,9 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_SurfaceCapabilities)
set(HEADERS
)
set(SOURCES
SurfaceCapabilities.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
# Win32 exclusive vk::SurfaceCapabilitiesFullScreenExclusiveEXT is used # Win32 exclusive vk::SurfaceCapabilitiesFullScreenExclusiveEXT is used
if(WIN32) if(WIN32)
add_executable(RAII_SurfaceCapabilities vulkan_hpp__setup_sample_raii( NAME SurfaceCapabilities )
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_SurfaceCapabilities PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_SurfaceCapabilities PRIVATE utils)
endif() endif()

View File

@ -20,7 +20,6 @@
#include <iomanip> #include <iomanip>
#include <sstream> #include <sstream>
#include <vector> #include <vector>
#include <vulkan/vulkan.hpp>
#include <vulkan/vulkan_to_string.hpp> #include <vulkan/vulkan_to_string.hpp>
static char const * AppName = "SurfaceCapabilities"; static char const * AppName = "SurfaceCapabilities";

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_SurfaceFormats) vulkan_hpp__setup_sample_raii( NAME SurfaceFormats )
set(HEADERS
)
set(SOURCES
SurfaceFormats.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_SurfaceFormats
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_SurfaceFormats PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_SurfaceFormats PRIVATE utils)

View File

@ -20,7 +20,6 @@
#include <iomanip> #include <iomanip>
#include <sstream> #include <sstream>
#include <vector> #include <vector>
#include <vulkan/vulkan.hpp>
#include <vulkan/vulkan_to_string.hpp> #include <vulkan/vulkan_to_string.hpp>
static char const * AppName = "SurfaceFormats"; static char const * AppName = "SurfaceFormats";

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_Template) vulkan_hpp__setup_sample_raii( NAME Template )
set(HEADERS
)
set(SOURCES
Template.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_Template
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_Template PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_Template PRIVATE utils)

View File

@ -20,7 +20,6 @@
#include "../utils/shaders.hpp" #include "../utils/shaders.hpp"
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "SPIRV/GlslangToSpv.h" #include "SPIRV/GlslangToSpv.h"
#include "vulkan/vulkan.hpp"
#include <iostream> #include <iostream>
#include <thread> #include <thread>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(RAII_TexelBuffer) vulkan_hpp__setup_sample_raii( NAME TexelBuffer )
set(HEADERS
)
set(SOURCES
TexelBuffer.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(RAII_TexelBuffer
${HEADERS}
${SOURCES}
)
set_target_properties(RAII_TexelBuffer PROPERTIES FOLDER "RAII_Samples")
target_link_libraries(RAII_TexelBuffer PRIVATE utils)

View File

@ -20,7 +20,6 @@
#include "../utils/shaders.hpp" #include "../utils/shaders.hpp"
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "SPIRV/GlslangToSpv.h" #include "SPIRV/GlslangToSpv.h"
#include "vulkan/vulkan.hpp"
#include <iostream> #include <iostream>
#include <thread> #include <thread>

View File

@ -26,7 +26,7 @@
#endif #endif
#include "../../samples/utils/utils.hpp" #include "../../samples/utils/utils.hpp"
#include "vulkan/vulkan_raii.hpp" #include <vulkan/vulkan_raii.hpp>
#include <numeric> #include <numeric>

View File

@ -404,6 +404,7 @@ void VulkanHppGenerator::generateVulkanRAIIHppFile() const
#ifndef VULKAN_RAII_HPP #ifndef VULKAN_RAII_HPP
# define VULKAN_RAII_HPP # define VULKAN_RAII_HPP
#include <memory>
#include <vulkan/vulkan.hpp> #include <vulkan/vulkan.hpp>
#if !defined( VULKAN_HPP_RAII_NAMESPACE ) #if !defined( VULKAN_HPP_RAII_NAMESPACE )

View File

@ -15,9 +15,8 @@
// VulkanHpp Samples : 01_InitInstance // VulkanHpp Samples : 01_InitInstance
// Create and destroy a vk::Instance // Create and destroy a vk::Instance
#include "vulkan/vulkan.hpp"
#include <iostream> #include <iostream>
#include <vulkan/vulkan.hpp>
static std::string AppName = "01_InitInstance"; static std::string AppName = "01_InitInstance";
static std::string EngineName = "Vulkan.hpp"; static std::string EngineName = "Vulkan.hpp";

View File

@ -14,26 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
if(NOT SAMPLES_BUILD_ONLY_DYNAMIC) vulkan_hpp__setup_sample_static( NAME 01_InitInstance )
project(01_InitInstance)
set(HEADERS
)
set(SOURCES
01_InitInstance.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(01_InitInstance
${HEADERS}
${SOURCES}
)
set_target_properties(01_InitInstance PROPERTIES FOLDER "Samples")
target_link_libraries(01_InitInstance PRIVATE utils)
endif()

View File

@ -26,7 +26,6 @@
#endif #endif
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "vulkan/vulkan.hpp"
#include <iostream> #include <iostream>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(02_EnumerateDevices) vulkan_hpp__setup_sample_dynamic( NAME 02_EnumerateDevices )
set(HEADERS
)
set(SOURCES
02_EnumerateDevices.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(02_EnumerateDevices
${HEADERS}
${SOURCES}
)
set_target_properties(02_EnumerateDevices PROPERTIES FOLDER "Samples")
target_link_libraries(02_EnumerateDevices PRIVATE utils)

View File

@ -16,7 +16,6 @@
// Create and destroy a device // Create and destroy a device
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "vulkan/vulkan.hpp"
#include <iostream> #include <iostream>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(03_InitDevice) vulkan_hpp__setup_sample_dynamic( NAME 03_InitDevice )
set(HEADERS
)
set(SOURCES
03_InitDevice.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(03_InitDevice
${HEADERS}
${SOURCES}
)
set_target_properties(03_InitDevice PROPERTIES FOLDER "Samples")
target_link_libraries(03_InitDevice PRIVATE utils)

View File

@ -16,7 +16,6 @@
// Create command buffer // Create command buffer
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "vulkan/vulkan.hpp"
#include <iostream> #include <iostream>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(04_InitCommandBuffer) vulkan_hpp__setup_sample_dynamic( NAME 04_InitCommandBuffer )
set(HEADERS
)
set(SOURCES
04_InitCommandBuffer.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(04_InitCommandBuffer
${HEADERS}
${SOURCES}
)
set_target_properties(04_InitCommandBuffer PROPERTIES FOLDER "Samples")
target_link_libraries(04_InitCommandBuffer PRIVATE utils)

View File

@ -16,7 +16,6 @@
// Initialize a swapchain // Initialize a swapchain
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "vulkan/vulkan.hpp"
#include <iostream> #include <iostream>
@ -52,8 +51,8 @@ int main( int /*argc*/, char ** /*argv*/ )
// determine a queueFamilyIndex that suports present // determine a queueFamilyIndex that suports present
// first check if the graphicsQueueFamiliyIndex is good enough // first check if the graphicsQueueFamiliyIndex is good enough
size_t presentQueueFamilyIndex = physicalDevice.getSurfaceSupportKHR( static_cast<uint32_t>( graphicsQueueFamilyIndex ), surface ) size_t presentQueueFamilyIndex = physicalDevice.getSurfaceSupportKHR( static_cast<uint32_t>( graphicsQueueFamilyIndex ), surface )
? graphicsQueueFamilyIndex ? graphicsQueueFamilyIndex
: queueFamilyProperties.size(); : queueFamilyProperties.size();
if ( presentQueueFamilyIndex == queueFamilyProperties.size() ) if ( presentQueueFamilyIndex == queueFamilyProperties.size() )
{ {
// the graphicsQueueFamilyIndex doesn't support present -> look for an other family index that supports both // the graphicsQueueFamilyIndex doesn't support present -> look for an other family index that supports both
@ -113,8 +112,8 @@ int main( int /*argc*/, char ** /*argv*/ )
vk::PresentModeKHR swapchainPresentMode = vk::PresentModeKHR::eFifo; vk::PresentModeKHR swapchainPresentMode = vk::PresentModeKHR::eFifo;
vk::SurfaceTransformFlagBitsKHR preTransform = ( surfaceCapabilities.supportedTransforms & vk::SurfaceTransformFlagBitsKHR::eIdentity ) vk::SurfaceTransformFlagBitsKHR preTransform = ( surfaceCapabilities.supportedTransforms & vk::SurfaceTransformFlagBitsKHR::eIdentity )
? vk::SurfaceTransformFlagBitsKHR::eIdentity ? vk::SurfaceTransformFlagBitsKHR::eIdentity
: surfaceCapabilities.currentTransform; : surfaceCapabilities.currentTransform;
vk::CompositeAlphaFlagBitsKHR compositeAlpha = vk::CompositeAlphaFlagBitsKHR compositeAlpha =
( surfaceCapabilities.supportedCompositeAlpha & vk::CompositeAlphaFlagBitsKHR::ePreMultiplied ) ? vk::CompositeAlphaFlagBitsKHR::ePreMultiplied ( surfaceCapabilities.supportedCompositeAlpha & vk::CompositeAlphaFlagBitsKHR::ePreMultiplied ) ? vk::CompositeAlphaFlagBitsKHR::ePreMultiplied

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(05_InitSwapchain) vulkan_hpp__setup_sample_dynamic( NAME 05_InitSwapchain )
set(HEADERS
)
set(SOURCES
05_InitSwapchain.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(05_InitSwapchain
${HEADERS}
${SOURCES}
)
set_target_properties(05_InitSwapchain PROPERTIES FOLDER "Samples")
target_link_libraries(05_InitSwapchain PRIVATE utils)

View File

@ -16,7 +16,6 @@
// Initialize a depth buffer // Initialize a depth buffer
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "vulkan/vulkan.hpp"
#include <iostream> #include <iostream>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(06_InitDepthBuffer) vulkan_hpp__setup_sample_dynamic( NAME 06_InitDepthBuffer )
set(HEADERS
)
set(SOURCES
06_InitDepthBuffer.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(06_InitDepthBuffer
${HEADERS}
${SOURCES}
)
set_target_properties(06_InitDepthBuffer PROPERTIES FOLDER "Samples")
target_link_libraries(06_InitDepthBuffer PRIVATE utils)

View File

@ -26,7 +26,6 @@
#endif #endif
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "vulkan/vulkan.hpp"
#include <iostream> #include <iostream>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(07_InitUniformBuffer) vulkan_hpp__setup_sample_dynamic( NAME 07_InitUniformBuffer )
set(HEADERS
)
set(SOURCES
07_InitUniformBuffer.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(07_InitUniformBuffer
${HEADERS}
${SOURCES}
)
set_target_properties(07_InitUniformBuffer PROPERTIES FOLDER "Samples")
target_link_libraries(07_InitUniformBuffer PRIVATE utils)

View File

@ -16,7 +16,6 @@
// Initialize a descriptor and pipeline layout // Initialize a descriptor and pipeline layout
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "vulkan/vulkan.hpp"
#include <iostream> #include <iostream>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(08_InitPipelineLayout) vulkan_hpp__setup_sample_dynamic( NAME 08_InitPipelineLayout )
set(HEADERS
)
set(SOURCES
08_InitPipelineLayout.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(08_InitPipelineLayout
${HEADERS}
${SOURCES}
)
set_target_properties(08_InitPipelineLayout PROPERTIES FOLDER "Samples")
target_link_libraries(08_InitPipelineLayout PRIVATE utils)

View File

@ -26,7 +26,6 @@
#include "../utils/math.hpp" #include "../utils/math.hpp"
#include "../utils/utils.hpp" #include "../utils/utils.hpp"
#include "vulkan/vulkan.hpp"
#include <iostream> #include <iostream>

View File

@ -14,22 +14,4 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(09_InitDescriptorSet) vulkan_hpp__setup_sample_dynamic( NAME 09_InitDescriptorSet )
set(HEADERS
)
set(SOURCES
09_InitDescriptorSet.cpp
)
source_group(headers FILES ${HEADERS})
source_group(sources FILES ${SOURCES})
add_executable(09_InitDescriptorSet
${HEADERS}
${SOURCES}
)
set_target_properties(09_InitDescriptorSet PROPERTIES FOLDER "Samples")
target_link_libraries(09_InitDescriptorSet PRIVATE utils)

Some files were not shown because too many files have changed in this diff Show More