Commit Graph

96 Commits

Author SHA1 Message Date
asuessenbach
2611c34aa5 Minor cleanup in utils.cpp: remove helper function createDebugUtilsMessengerEXT. 2022-08-04 08:49:12 +02:00
asuessenbach
e8bf9bed9a Move all the static_assertions from vulkan_handles.hpp and vulkan_structs.hpp into the new header vulkan_static_assertions.hpp 2022-08-03 11:53:57 +02:00
asuessenbach
056abda3e2 Reduce number of included headers 2022-07-27 16:39:37 +02:00
asuessenbach
3aae157e5b Move the vk::to_string functions into a separate header vulkan_to_string.hpp. 2022-07-26 11:19:42 +02:00
asuessenbach
527e52a1bd Introduce VULKAN_HPP_NO_TO_STRING to optionally remove the various vk::to_string functions.
Also extend the samples to hold some local version of the needed to_string functions in case VULKAN_HPP_NO_TO_STRING is defined.
2022-07-25 17:11:30 +02:00
Jinesi Yelizati
9748e47228
Speed up CI by using ninja and parallel build (#1347)
* chore(CI): speed up CI by using ninja and parallel build

* chore(CI): align compiler for c and cxx

* fix(samples): add dependency to generator

* fix(cmake): get rid of file glob

* chore(CI): use clang on mac

glfw don't support gcc on mac

* fix(sample): add depencency on build_vulkan_hpp

* fix(cmake): make sure every target in tests and samples link to utils
2022-07-07 10:22:21 +02:00
asuessenbach
9e4f6812fb Add CI on MacOS. 2022-06-21 14:48:56 +02:00
asuessenbach
0fb855a4a2 Resolve validation layer issues with some samples. 2022-05-02 11:36:36 +02:00
asuessenbach
d90c6cbbfc Add pNext as optional last argument to constructors of structs that hold a pNext. 2022-03-23 17:08:19 +01:00
asuessenbach
5fe410279a Change ColumnLimit with clang-format from 120 to 160. 2022-02-28 10:11:04 +01:00
asuessenbach
9142bea37e Change type of loop variables from uint8_t to uint32_t. 2022-02-09 08:32:42 +01:00
asuessenbach
d38980d592 Update samples on PhysicalDeviceMemoryProperties 2022-02-03 13:50:32 +01:00
asuessenbach
6fdeaa8001 Make struct cast operators explicit. 2021-12-07 10:39:23 +01:00
asuessenbach
9b7adb35ee Removed explicit setting of the ComponentMapping for ImageViews in samples to RGBA, as the default of Identity does the same. 2021-11-11 11:49:07 +01:00
asuessenbach
2a55e8ef2f Minor cleanup work. 2021-11-09 08:40:53 +01:00
Stephan Seitz
bc37592747 Fix release build of samples: suppress warnings about unused variables 2021-09-06 10:48:52 +02:00
Patrick Gordon
8ae472d020 fix numeric_limits not found, include <limits> in samples/utils.hpp 2021-07-22 22:30:56 +01:00
asuessenbach
69e8e5bf84 Refactor RAII-samples to use std::unique_ptr only if needed. 2021-06-23 10:15:56 +02:00
asuessenbach
076fddc52a Use github actions for CI builds. 2021-06-16 16:53:00 +02:00
asuessenbach
cb87566cdd Resolve issues with release build. 2021-05-25 16:14:56 +02:00
asuessenbach
af54ea22a8 Update to VK_HEADER_VERSION 175. 2021-04-15 15:40:22 +02:00
asuessenbach
3a776dd1d8 Update to VK_HEADER_VERSION 172. 2021-03-09 09:13:32 +01:00
asuessenbach
2cb1c19c7f Introduce raii-compliant handle wrapper classes. 2021-02-22 16:19:12 +01:00
asuessenbach
5fc91db38d Prepare usage of BestPractices validation layer.
Still disabled by default due to yet to be resolved issues.
2021-01-25 13:34:30 +01:00
Markus Tavenrath
160dc916f9 Change structure member sType to non-const to allow default assignment operator. Make copy constructor and copy assignment default. The latter is required for C++20 designated initializers. Delegate the constructor from C-type to the copy constructor by casting rhs accordingly. Fix warnings on gcc/clang. 2021-01-18 12:25:50 +01:00
asuessenbach
0800990456 Add MSVC 2019 builds again
+ remove breaking project samples/PhysicalDeviceMemoryProperties for MSVC
2020-12-07 16:22:07 +01:00
asuessenbach
53084c9941 Move some samples to VK_API_VERSION_1_1. 2020-11-17 16:42:52 +01:00
asuessenbach
2e95313c1d fix some warnings (errors) on release build. 2020-10-20 10:05:18 +02:00
asuessenbach
8d1c84b3f5 Set warnings as errors for the generator, the samples, and the tests. 2020-10-14 17:44:16 +02:00
asuessenbach
0b8e4cb938 Introduce helper function ResultValue<UniqueHandle<Type, Dispatch>>::asTuple()
Allows coding like this:

    vk::Result         result;
    vk::UniquePipeline pipeline;
    std::tie( result, pipeline ) =
      device->createGraphicsPipelineUnique( nullptr, graphicsPipelineCreateInfo ).asTuple();
2020-09-16 09:36:37 +02:00
asuessenbach
77b401d4a9 correct enhanced version of vkGetQueryPoolResults
- mark wrong version as deprecated (C++14)
- introduce new version returning ResultValue<vector<T,Allocator>>
- introduce new singular version returning ResultValue<T>
2020-09-03 14:20:32 +02:00
asuessenbach
0db791c687 Special handling for commands that get a size and a void-pointer to write data into
- marked previous function that got an ArrayProxy as deprecated (C++14)
- introduce a new function returning a std::vector of the given size
- introduce a new function returning a single value
2020-09-02 15:00:06 +02:00
Markus Tavenrath
6f4e1e41a7 Add documentation on how to build the generator, tests, and samples. 2020-08-13 11:38:21 +02:00
asuessenbach
2571778a4e [Samples][Ray Tracing] Correct offsets/sizes in the shader binding table. 2020-08-12 11:38:42 +02:00
asuessenbach
fba2516d9c Remove implicit cast operators on ResultValue<T>
As it turned out to not provide a complete solution to the C++-API-change issue on logical-change of the C-API, we simply remove those implicit cast operators. That is, accessing the result and the value need to be explicit.
2020-07-22 16:49:42 +02:00
asuessenbach
4cdc51ba0f Introduce usage of [[nodiscard]] with C++17 2020-07-22 10:59:12 +02:00
asuessenbach
d86303c0e4 Introduce structure constructors using ArrayProxyNoTemporaries 2020-07-09 12:03:03 +02:00
Andreas Süßenbach
5da023d17a
Merge pull request #650 from mocabe/ArrayWrapper1D-conversion
Small fix for ArrayWrapper1D's conversion operators
2020-07-02 09:20:02 +02:00
mocabe
9aa21f85fc [samples] Fix compilation of InstanceLayerExtensionProperties 2020-07-02 12:16:14 +09:00
asuessenbach
ec205306c6 New sample DebugUtilsObjectName 2020-06-25 11:43:26 +02:00
Markus Tavenrath
57555edfb2 Fix warnings and errors on clang-3.9 2020-05-18 14:05:51 +02:00
asuessenbach
f5e59484a6 Introduce usage of clang-format to format vulkan.hpp and the other sources. 2020-04-23 10:55:02 +02:00
asuessenbach
a5e8a7ccb8 Update to and adjustments for VK_HEADER_VERSION 136. 2020-03-30 12:13:07 +02:00
asuessenbach
0ea8a527ba Introduce ArrayWrapper?D, replacing ConstExpression?DArrayCopy
+ no explicit copy constructor of structs needed any more
+ removed assignment operator of structs that don't hold a const sType member (for those, we still need the assignment operator!)
+ simplified operator==() of structs (pre C++20)
+ resolved some 32bit warnings
2020-03-25 12:35:35 +01:00
mocabe
9f5885ea52 [CMake] Disable tests in external libraries 2020-03-20 05:12:25 +09:00
mocabe
62667a6b4b [samples] Add missing explicit casts 2020-03-20 03:59:14 +09:00
mocabe
2f4ca1d168 [samples][PhysicalDeviceGroups] Fix device name output 2020-03-20 03:57:46 +09:00
mocabe
590fc89fb5 [samples] Add missing VKAPI_ATTR and VKAPI_CALL for debug callback functions 2020-03-20 03:56:18 +09:00
asuessenbach
947583a1e5 Replace explicit template parameter MaskType for Flags types by std::underlying_type<BitType>::type and specify the underlying type for the FlagBits types
Resolves #507
2020-02-25 13:36:05 +01:00
mocabe
837aac5499 Fix formatting 2020-02-06 10:12:08 +01:00