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
mocabe
32d0bc6843
samples: Remove C++14 codes
2020-02-06 10:12:08 +01:00
mocabe
1572c0b1ba
Clean EOF of some files
2020-02-06 10:12:08 +01:00
mocabe
891ca21334
CMake: Enable C++14 for samples
2020-02-06 10:12:08 +01:00
mocabe
a7e2cf152e
CMake: Add SAMPLES_BUILD_ONLY_DYNAMIC option
2020-02-06 10:12:08 +01:00
mocabe
b6a190f4a2
Building samples for Linux ( #491 )
...
* 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>
2020-01-28 10:16:10 +01:00
Andreas Süßenbach
f1668a6e28
Remove template parameter defaultValue from Flags. ( #492 )
...
Flags always default to just no FlagBits set.
2020-01-21 12:01:35 +01:00
Andreas Süßenbach
33b244859b
Add specific initialization of Flags and FlagBits. ( #489 )
...
Resolves #488 .
2020-01-16 12:12:31 +01:00
Arthur Brainville
4320950db1
Update EnableValidationWithCallback.cpp ( #466 )
...
Quick patch that fixes the `EnableValidationWithCallback` sample:
There's no `str()` method here, should use `c_str()`;
*but* also, you can print the std::string directly to `std::cout`.
Patches remove `.str()` from printing line when WIN32 is not defined.
2020-01-06 12:16:35 +01:00
nvaara
196de24461
fixed vertexBindingDescription ( #465 )
2020-01-06 12:12:12 +01:00
Andreas Süßenbach
021c7499a0
Cleanup on usage of static vs. dynamic loading ( #462 )
2019-12-23 08:45:40 +01:00
Andreas Süßenbach
18febd6237
Add usage of DebugUtilsMessenger in vk::su::createInstance ( #461 )
2019-12-19 14:00:51 +01:00
Andreas Süßenbach
0280efc78c
Corrected image layout and descriptor set handling in RayTracing sample. ( #460 )
2019-12-19 13:59:48 +01:00
Andreas Süßenbach
7da1c8baf0
Samples: Explicitly set vk::PipelineMultisampleStateCreateInfo::rasterizationSamples ( #459 )
2019-12-16 14:51:29 +01:00
Andreas Süßenbach
0b01a8a74c
Introduce default initializers for member variables, simplify default values for constructor arguments ( #455 )
2019-12-12 11:40:21 +01:00
takiyu
7fc627d6b9
Fix lableName typo. ( #440 )
2019-11-26 11:28:57 +01:00
Andreas Süßenbach
e850963599
Extend functions returning a std::vector<vk::StructureChain> to use an additional local vector for getting the information, and then copy the heads of the StructureChains over to the return vector ( #432 )
...
Fixes #400
2019-11-13 10:04:50 +01:00
Andreas Süßenbach
c06a3300f6
Add a couple of new samples, improved some others: ( #414 )
...
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
2019-10-28 15:36:21 +01:00
Andreas Süßenbach
7f51d1a724
Correct error message usage in CMakeLists.txt. ( #404 )
2019-10-08 10:35:51 +02:00
Andreas Süßenbach
becef43315
Change (most of) the samples to use the DispatchLoaderDynamic by default. ( #392 )
2019-09-26 09:55:15 +02:00
Andreas Süßenbach
9df0fac638
Use VK_EXT_debug_utils instead of deprecated VK_EXT_debug_report. ( #389 )
2019-09-25 11:56:46 +02:00
Andreas Süßenbach
ecfaf9a0df
Add sample RayTracing. ( #361 )
2019-07-25 13:52:09 +02:00
Andreas Süßenbach
36691e4946
Add sample ValidationCache; slightly adjust vk::su::createInstance. ( #357 )
2019-07-09 09:25:48 +02:00
Andreas Süßenbach
5414a2e232
Add sample TexelBuffer; adjust vk::su::updateDescriptorSets ( #352 )
2019-07-03 09:23:56 +02:00
Andreas Süßenbach
d811c3a7e2
Add sample Template; some generalization in utils; some minor improvements in some samples. ( #349 )
...
* Add samples SecondaryCommandBuffer and SeparateImageSampler.
+ made some helper functions more explicit.
* Add sample Template, some generalizations in utils, some minor improvements in various samples.
2019-06-25 09:47:27 +02:00
Andreas Süßenbach
a6ad0f1eff
Re-introduce vulkan/vulkan.hpp; adjust include order to use that header in samples and tests ( #340 )
2019-06-11 13:25:36 +02:00
Markus Tavenrath
50e0a941e9
Use new Vulkan-Headers repository. Don't generate createReturnValue function call if the return type is void. ( #335 )
2019-06-06 13:13:38 +02:00
Andreas Süßenbach
7900c655f3
Add samples SecondaryCommandBuffer and SeparateImageSampler. ( #331 )
...
+ made some helper functions more explicit.
2019-05-21 15:44:52 +02:00
Andreas Süßenbach
5ce8ae7fd0
Add samples OcclusionQuery, PipelineCache, PipelineDerivative, PushConstants, and PushDescriptors. ( #325 )
...
+ some minor changes in some samples, math, shaders, and utils.
2019-05-09 15:25:40 +02:00
Andreas Süßenbach
39d204839d
[VulkanHpp] changed to "VK_LAYER_KHRONOS_validation" as validation layer ( #324 )
...
+ fixed one issue caught by that layer in InputAttachment.
2019-04-30 17:03:26 +02:00
Andreas Süßenbach
1a7779e75b
Add samples InstanceExtensionProperties, InstanceLayerExtensionProperties, InstanceLayerProperties, MultipleSets ( #320 )
...
+ slightly adjust some other files.
2019-04-15 10:18:58 +02:00
Andreas Süßenbach
d965a74cc0
Add samples ImmutableSampler, InitTexture, InputAttachment ( #315 )
...
+ slightly adjust some other samples.
2019-04-09 15:19:18 +02:00
Andreas Süßenbach
f7ec6041b3
Add samples DynamicUniform, EnableValidationWithCallback, EnumerateDevicesAdvanced, Events ( #313 )
...
+ slightly adjust some other samples.
2019-04-01 10:06:49 +02:00
Andreas Süßenbach
fba738079a
Use CMake's find_package to locate vulkan for samples and tests. ( #308 )
2019-04-01 08:52:22 +02:00
Andreas Süßenbach
2d8483e06f
Add samples 16_Vulkan_1_1, CopyBlitImage, CreateDebugReportCallback, DrawTexturedCube ( #304 )
...
+ slightly adjust some other samples.
2019-03-26 12:24:36 +01:00
Andreas Süßenbach
45590a9bd7
Change include paths and argument type on main functions to ease linux adoption ( #307 )
2019-03-19 15:35:08 +01:00
Andreas Süßenbach
cd8e5283c3
Extend set of samples ( #296 )
...
+ 12_InitFrameBuffers, 13_InitVertexBuffer, 14_InitPipeline, 15_DrawCube;
+ extend utilities and add utilities on geometries, math, and shaders
+ slightly adjust some other samples
2019-03-15 10:40:45 +01:00
Andreas Süßenbach
f0dc8d6f38
Cleanup on Samples ( #295 )
...
- introduced samples/utils functions in namespace vk::su (vulkan sample utils)
- introduced usage of debugReportCallback
2019-03-05 08:59:40 +01:00
Andreas Süßenbach
65e1f8ac31
Add sample 11_InitShaders ( #288 )
...
+ add submodule glslang
2019-02-13 12:17:22 +01:00
Andreas Süßenbach
05497cb191
Changed from using outdated environment variable VK_SDK_PATH to VULKAN_SDK. ( #286 )
2019-01-28 14:47:13 +01:00
Andreas Süßenbach
d53fdf3bce
samples/10_InitRenderPass: added missing device extensions on device creation. ( #281 )
2019-01-14 10:08:38 +01:00
Andreas Süßenbach
a9b5b68572
Switch to warning level 4 ( #240 )
2018-08-17 17:47:48 +02:00
Andreas Süßenbach
4c9b1f87b3
Samples on vulkan.hpp: 09_InitDescriptorSet.cpp, 10_InitRenderPass. ( #211 )
...
+ add some missing exit code to some samples.
2018-05-07 14:28:11 +02:00
Andreas Süßenbach
9efc002efd
Sample on vulkan.hpp: 08_InitPipelineLayout. ( #210 )
2018-04-25 07:53:09 -04:00
Markus Tavenrath
4b179131e6
When using local version of vulkan.hpp use local version of vulkan.h … ( #207 )
...
* When using local version of vulkan.hpp use local version of vulkan.h too so that the headers do match.
* Update to Vulkan 1.1.74
2018-04-23 15:16:32 +02:00
Andreas Süßenbach
33c7954b6e
Sample on vulkan.hpp: 07_InitUniformBuffer. ( #203 )
2018-04-09 10:53:55 +02:00
Andreas Süßenbach
bbaa5956c6
First samples on using vulkan.hpp: 01_InitInstance, 02_EnumerateDevices, 03_InitDevice, 04_InitCommandBuffer, 05_InitSwapchain, 06_InitDepthBuffer. ( #197 )
2018-03-31 01:09:50 -07:00