baldurk
a05fd08a1c
Add support for VK_KHR_maintenance6. Closes #3602
2025-08-25 11:36:01 +01:00
baldurk
2322e165de
Update copyright years to 2025
2025-03-14 18:54:37 +00:00
baldurk
aa30ac2c10
Don't overlap storage with multiple inline UBO updates in one template
...
* Previously we were writing the inline UBO data to the same byte storage
meaning the last update's data would write over all updates.
2024-12-09 16:19:20 +00:00
baldurk
8a6c3a73f7
Handle garbage descriptor set in vkCmdPushDescriptorSetKHR. Closes #3461
2024-10-25 10:37:38 +01:00
baldurk
78e84aa544
Don't crash on empty descriptor sets with no bindings
2024-04-16 20:03:54 +01:00
baldurk
9f4f0e6aa1
Update copyright years to 2024
2024-02-12 11:04:52 +00:00
baldurk
0b18cefc5f
Specify correct library flag when creating partial pipelines
2023-11-30 14:38:48 +00:00
baldurk
10bdf616a7
Fix memory corruption properly in test
2023-11-30 13:30:00 +00:00
baldurk
65a13b1a6d
Fix memory corruption in VK_Parameter_Zoo test
2023-11-28 12:04:26 +00:00
William Pearson and Baldur Karlsson
9cf30b190e
Fix crash when descriptor update template uses unreferenced layout
...
It is possible for the VkDescriptorUpdateTemplateCreateInfo to have its
descriptorSetLayout or pipelineLayout be the only reference to the
corresponding object, as vkCmdPushDescriptorSetWithTemplateKHR and
vkUpdateDescriptorSetWithTemplate only require that the actual layout
matches/is compatible with the one used by the template. Before, there
was no dependency from the update template to the layout, so if it was
the sole use of a layout, the layout would not be saved in the capture,
resulting in a crash during playback.
This change also modifies the vk_parameter_zoo to test this case. With
those modifications, the change to vk_descriptor_funcs is required to
prevent the crash. Note that on my machine, I needed to comment out
other parts of vk_parameter_zoo, or else it would crash (even when
not run under renderdoc) due to driver issues.
For reference:
https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/vkCmdPushDescriptorSetWithTemplateKHR.html#VUID-vkCmdPushDescriptorSetWithTemplateKHR-layout-07993
https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/vkUpdateDescriptorSetWithTemplate.html#VUID-vkUpdateDescriptorSetWithTemplate-pData-01685
https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VkDescriptorUpdateTemplateCreateInfoKHR.html#_members
2023-11-09 10:15:00 +00:00
baldurk
dd4e0d44ad
Do two-pass processing of pNext chains for strict validity. Closes #3093
...
* We first need to do a pass to find extension structs that affect validity of
pointers (whether they're ignored or not), then do a pass to process.
2023-10-25 17:56:38 +01:00
baldurk
9d39b8e1a8
Reformat code for clang-format 15
2023-09-05 11:02:08 +01:00
baldurk
c353f6fe6d
Add memory readback microbenchmark
2023-03-23 16:16:03 +00:00
baldurk
d47e79ae07
Update copyright years to 2023
2023-02-01 12:23:32 +00:00
baldurk
3ec6986ac4
Test that descriptor arrays of dynamic UBOs have offsets replayed
2022-11-18 14:21:14 +00:00
baldurk
62bfec8442
Test empty submits are properly processed
2022-11-18 12:37:45 +00:00
baldurk
f2f77716ad
Test that vkEnumeratePhysicalDevices correctly handles undersized array
2022-11-17 18:22:57 +00:00
baldurk
9d18db67a7
Fix some edge case pNext struct usages. Closes #2749
2022-10-12 13:04:34 +01:00
baldurk
1f1f1fae2d
Fix some issues with tests found running on linux
2022-05-26 13:43:46 +01:00
baldurk
fcdea67879
Update copyright years to 2022
2022-02-17 17:38:32 +00:00
Jake Turner and Baldur Karlsson
b3f57d1427
Fix Vulkan Validation Layer error when running VK_Parameter_Zoo
...
refpushtempl desscriptor update template was not deleted before shutdown
2021-07-07 09:59:22 +01:00
baldurk
55a6d8092b
Test that memory bound via vkBindBufferMemroy2 is properly captured
2021-04-30 13:44:52 +01:00
baldurk
827a48fe57
Check sampler validity against immutable samplers on serialise
2021-03-15 14:39:21 +00:00
baldurk
92192ef348
Add test to ensure vkBindBufferMemory2 can be split up
2021-01-13 14:48:40 +00:00
baldurk
026da176bb
Update copyright years to 2021
2021-01-13 13:56:10 +00:00
baldurk
26f680f632
Check that sampler updates to immutable sampler descriptors are ignored
2020-10-21 14:57:42 +01:00
baldurk
18a7e3c05c
We shouldn't return physical device entry points in vkGetDeviceProcAddr
...
* The spec says we only return a function pointer for device or device-child
functions. In practice the loader wraps instances and physical devices so when
calling a direct GDPA returned function the loader won't unwrap it so we won't
get our proper wrapped objects and will crash.
2020-09-04 10:32:17 +01:00
baldurk
3e100109da
Test destroying/freeing NULL handles, fix validation errors
2020-08-20 17:02:03 +01:00
baldurk
624da2fb25
Add test that we don't crash on draws with new viewports
2020-07-27 16:17:13 +01:00
baldurk
7927ff2e40
Add tests of shaders that don't use GLSL.450 & have 0 stageFlags binds
2020-07-15 15:34:37 +01:00
baldurk
5c57493855
Share common shader source on vulkan
2020-07-15 14:05:20 +01:00
baldurk
ff62ab501c
Add helpers for creating samplers
2020-05-27 22:38:04 +01:00
baldurk
9c0423506d
Don't test timeline semaphore if it's not supported
2020-04-30 18:15:28 +01:00
baldurk
3ef67d6647
Test passing NULL in object names/labels
2020-04-21 17:09:33 +01:00
baldurk
f4e141e843
Handle invalid pointers in create info when viewport state is dynamic
2020-04-15 20:33:56 +01:00
baldurk
a56af589d9
Don't modify descriptor update template while writing. Closes #1765
2020-03-09 17:36:56 +00:00
baldurk
b0f0dad7fd
Test that we can capture and replay VkPhysicalDeviceVulkan12Features
...
* This ensure we don't accidentally enable any features that aren't supported.
2020-03-05 19:35:45 +00:00
baldurk
06570ea7ad
Remove backbuffer comparisons from test suite, simplify default triangle
...
* It's not particularly scalable and can be brittle to driver changes, and we
can use targeted specific pixel tests to check what we really want - to see if
the output has rendered correctly.
* Overlay tests still check files directly - this is a future refactor to
remove.
2020-02-11 17:11:33 +00:00
baldurk
f427a7ce02
Test that repeated redundant calls for spin-sync aren't serialised
...
* If the application is calling e.g. vkGetFenceStatus() in a loop we don't want
to serialise every call.
2020-02-03 18:18:17 +00:00
baldurk
4df8ce7a02
Test VK_EXT_tooling_info in VK_Parameter_Zoo not VK_Simple_Triangle
...
* Keep the simple triangle really the bare minimum.
2020-02-03 18:18:17 +00:00
baldurk
f18cf01671
test optional EXT_transform_feedback parameters in VK_Parameter_Zoo
2020-02-03 18:18:17 +00:00
baldurk
83f0398aa6
Add test to parameter zoo to catch descriptor referencing resources
2020-01-27 20:45:08 +00:00
baldurk
2916c0f9f7
Update copyright years to 2020
2020-01-06 16:20:45 +00:00
baldurk
848b58826d
Ensure we ignore unused parameters in DescriptorUpdateTemplateCreateInfo
2019-12-12 17:58:52 +00:00
baldurk
0773f13949
Ensure re-used handles in descriptor sets don't cause problems
...
* Previously if a handle was reused, and then a stale descriptor referencing the
old handle was removed it would remove the *new* object from the list of
referenced resources. This could cause a resource to be not included in a
capture if nothing else added a new reference.
2019-12-12 17:58:52 +00:00
baldurk
53569e56bb
Allow AllocatedBuffer/AllocatedImage to be copied around in vulkan tests
...
* Instead of tracking their lifetime with that object, we move the lifetime
tracking into the parent VulkanGraphicsTest and destroy them all at the end. A
single handle can optionally be free'd on its own.
2019-11-22 14:56:51 +00:00
baldurk
b6c9b6298f
Only read pImmutableSamplers pointer for sampler descriptors
2019-10-28 11:17:54 +00:00
baldurk
812e601a88
Ignore sampler updates when descset has immutable samplers. Closes #1528
2019-09-23 16:48:04 +01:00
baldurk
6d282f90d9
rename TEST macro to un-confused visual assist
...
* Visual assist comes with a pre-defined interpretation of TEST() for
googletest, which conflicts with ours. We can't seem to override it with a
va_stdafx.h even
2019-09-17 12:40:00 +01:00
baldurk
a6aa0ac5d0
Handle other ignored garbage substates in vulkan graphics PSO creation
2019-09-17 12:02:37 +01:00