baldurk
e3c29f80cd
Fix normal validation issues in vulkan tests
...
* Missing usage flags, invalid state creation/setting, invalid combination of
LOAD op and UNDEFINED layout, etc.
2026-11-10 12:02:46 +00:00
baldurk
eb8d0450a0
Don't add duplicate validation features structs
...
* This can happen if the test itself adds VK_EXT_validation_features
2026-11-10 12:02:46 +00:00
baldurk
77b4d531e5
Disable OBS during tests - it introduces validation errors
2026-11-10 12:02:46 +00:00
baldurk
0b15a71e88
Move extra renderpass dependencies to helper creator
...
* This means we get the same benefit of syncing with clears/copies in test-
created renderpasses.
2026-11-10 12:02:46 +00:00
baldurk
ae2f8db399
Add option to hard-break on validation errors in tests
...
* On D3D we also start checking for leaking objects on shutdown (Vulkan this is
done by default, GL we have no control over validation).
2026-11-10 12:02:45 +00:00
baldurk
41a17ba6f7
Don't set shader path tag when not available
2026-10-27 12:22:57 +00:00
baldurk
3ea44b8511
Add tests for separate debug info on D3D + Vulkan, and embedding
2026-10-26 11:47:28 +00:00
baldurk
948df720ad
Remove linked shaderc support in demos - no longer supported
...
* shaderc doesn't build with VS2015 so can't be linked in.
2026-10-23 23:13:17 +01:00
baldurk
06da5d1974
Set demo window title for vulkan tests
2026-09-15 17:00:54 +01:00
baldurk
49f3c76c57
Fix demos reference to device from window
2026-09-14 09:56:36 +01:00
baldurk
527f34614b
vkDeviceWaitIdle workaround because presentation is broken
2026-09-13 12:57:43 +01:00
baldurk
3cc984148c
Put demos temp files in each demo's tmp directory
2026-09-11 17:27:36 +01:00
Jake Turner
30c78d389a
Add VulkanGraphicsTest::setName() overload for VkQueue & VkShaderModule
2026-09-09 15:24:59 +01:00
baldurk
ccc110c57e
Fix some validation errors in tests
2026-07-24 17:52:48 +01:00
Jake Turner
d8cb84e2ce
Add setName overload for VkCommandBuffer, VkCommandPool
2026-04-21 10:37:46 +01:00
Jake Turner
eb30aebfdf
Add more overloads for VulkanGraphicsTest::setName
2026-03-30 13:27:30 +01:00
Jake Turner
56de707492
Demos support for "VK_EXT_metal_surface" on Apple
2026-02-09 20:06:59 +00:00
baldurk
856c838def
Update copyright years to 2026 and fix copyright ranges
...
* In a previous update in 2021 many copyright ranges were truncated
accidentally, and some files have been copy-pasted with wrong years. These
dates have been fixed based on git history and original copyright messages.
2026-01-05 14:17:28 +00:00
baldurk
81a367be66
Add naming helper for image views
2025-10-15 12:32:44 +01:00
baldurk
25adde711a
Enforce extra alignment on AS buffers in demo
2025-07-29 16:44:08 +01:00
baldurk
d1ce4ac412
Ignore VUID-vkAcquireNextImageKHR-semaphore-01779
2025-07-29 16:43:05 +01:00
baldurk
3e70a37fac
Add test of descriptor buffer
2025-07-09 09:57:56 +01:00
baldurk
6e5518e882
Add --gpuva option to vulkan tests
2025-06-19 16:14:18 +01:00
thisisjimmyfb
b79d1e6fe2
Android swapchain format selection prefer to use srgb format
...
Android to use similar swapchain format and dimension as Windows
2025-06-19 11:45:04 +01:00
thisisjimmyfb
035fc9974d
Remote Android and Linux test support part 2
...
Support swapchain image size greater than 4
2025-06-19 11:45:04 +01:00
baldurk
d7236e0d91
Fix reads & writes to storage texel buffers in vulkan shader debugging
2025-05-26 14:59:46 +01:00
Jake Turner
7eef20b3db
Added demos test VK_Mesh_Shader
...
Similar on d3d12_mesh_shader test, move some helper code from d3d12_mesh_shader python to testcase.py to allow for sharing with vk_mesh_shader python
2025-03-20 13:52:17 +00:00
baldurk
2322e165de
Update copyright years to 2025
2025-03-14 18:54:37 +00:00
Cam Mannett
7b767c9e6e
Preliminary Vulkan AS/RQ test
...
This test renders a small triangle that casts a shadow from a point light, onto a larger triangle. The test runner then checks that various pixels in the final output are the correct colour.
There is also an arbitrary AS copy in the render loop just to hit more API coverage when manually capturing, but the test runner doesn't check its output.
Core test work originally done by martyn.jacques@arm.com
2024-11-25 13:09:22 +00:00
baldurk
dea24cd5d8
Add BDA support to AllocatedBuffer in demos
...
* This requires setting vmaBDA to true, which is opt-in as it applies
universally to all memory allocations in the test. We don't know if there are
driver impacts from enabling BDA and it may also mess with our tests.
2024-11-20 15:49:53 +00:00
baldurk
9916defb14
Update VMA to v3.1.0
...
* We make BDA opt-in as it applies to all memory allocations.
2024-11-20 15:49:53 +00:00
baldurk
030f3430ee
Workaround AcquireNextImage being awful
...
* Apparently the spec allows drivers to do extremely stupid things with
swapchain images and return them even when it's not valid for you to use them
yet because last frame's work to the image is still ongoing, which leads to a
validation warning about using a semaphore when it might technically still be
in flight.
* To get around this because AcquireNextImage doesn't actually block until an
image is ready inspite of having a timeout and being expected to return a
usable image it doesn't, we use a manual fence to do what AcquireNextImage
should be doing.
2024-11-20 15:49:53 +00:00
baldurk
178b733001
Add helper for loading a shader module from disk in tests
2024-09-09 14:45:30 +01:00
baldurk
525babb868
Add a semaphore per swapchain image
...
* With only a single semaphore we can only have one frame in flight and get
validation layer messages if we run faster than that and re-use the
renderStartSemaphore before the previous frame has completed.
2024-03-18 10:28:36 +00:00
baldurk
9f4f0e6aa1
Update copyright years to 2024
2024-02-12 11:04:52 +00:00
Jake Turner
93eb160e08
Revert "Update VMA Allocator to v3.0.1"
...
It is causing more problems than benefits
This reverts commit 6895194805 .
2024-01-03 13:34:13 +00:00
Jake Turner
6895194805
Update VMA Allocator to v3.0.1
...
Disabled warnings 4189, 4324 for vk_test.cpp
4189: 'identifier' : local variable is initialized but not referenced
4324: 'struct_name' : structure was padded due to __declspec(align())
because of warnings in vk_mem_alloc.h
2023-12-22 12:53:40 +00:00
baldurk
9d39b8e1a8
Reformat code for clang-format 15
2023-09-05 11:02:08 +01:00
Jake Turner
117db087a4
Vk tests ignore default pipeline in headless mode
...
Fixes crash trying to launch VK_Compute_Only
2023-07-20 17:26:30 +01:00
baldurk
7f8e14fb65
Add some helpers to make minimal templates for each autotest API
2023-06-15 11:25:27 +01:00
baldurk
448b78ca68
Bare bones port of demos project to android
2023-03-23 16:16:03 +00:00
baldurk
d47e79ae07
Update copyright years to 2023
2023-02-01 12:23:32 +00:00
baldurk
c0d4a75d52
Allow forcing on a graphics or compute-only queue in demos
...
* This creates multiple queues and can be useful for testing, when the test only
uses one or the other as its primary queue.
2022-12-21 23:03:39 +00:00
baldurk
4e4a7518fa
Ensure inline uniform blocks have descriptor pool space allocated
2022-09-19 16:44:56 +01:00
Jake Turner
c83851e884
First Apple platform support for Vulkan demos
...
Uses Metal-CPP-Extensions code to create window and the event loop.
Does not include support for Nuklear
2022-07-08 11:08:18 +01:00
baldurk
4d9f53427e
Check queue availability in vulkan compute-only test
2022-06-24 12:22:13 +01:00
baldurk
7d9a1a05b8
Correctly handle programs that don't create graphics queues
2022-06-21 15:31:41 +01:00
baldurk
a9562c87f5
Test that discard patterns don't disturb bound state on vulkan
2022-05-03 15:30:20 +01:00
baldurk
fcdea67879
Update copyright years to 2022
2022-02-17 17:38:32 +00:00
baldurk
ec5c14dee8
Add support for multiple batched presents on vulkan. Closes #2492
2022-02-10 16:36:19 +00:00