Commit Graph
653 Commits
Author SHA1 Message Date
baldurk fe4a79054f Update vulkan headers to latest 2023-01-17 14:15:08 +00:00
baldurk 86d101eb88 Add test to make sure replay and analysis features work with library PSO 2023-01-12 15:20:28 +00:00
baldurk f78b585018 Add D3D12_Vertex_UAV test to demos project 2023-01-12 13:48:13 +00:00
baldurk 220b26aa59 Handle collisions with existing UAVs in root signature when patching
* When debugging a pixel or doing quad overdraw we replace the pixel shader and
  patch in our own UAV. Previously we were moving other UAVs out of the way that
  were visible to the pixel shader, but this fails if a UAV is visible to all
  stages and used in a vertex stage.
* Now instead for pixel shader inputs we pick a free space and use it. For quad
  overdraw we pick an arbitrary high space to hopefully use the precompiled
  shader, and if it's somehow not free we recompile the shader with a free
  space.
2023-01-06 16:53:20 +00:00
baldurk f23cb75633 Make sure sample mask does not affect normal texture overlays 2023-01-05 15:39:14 +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 0a0fe7b021 Correctly round generated SNORM data in texture zoo tests 2022-12-15 15:20:11 +00:00
hsm 825536c5bc Replace NULL macro with VK_NULL_HANDLE 2022-12-10 00:35:11 +01:00
hsm f3c5d92314 Fixed uninitialized local variable
This patch solves the following Visual C compiler error when attempting to build the "util/tests/demos.sln" VS project from the command-line w/ MSBUILD:

`error C2220: the following warning is treated as an error
warning C4701: potentially uninitialized local variable 'xfbpipe' used`
2022-12-10 00:35:11 +01:00
baldurk dfe07d6822 Update application API to 1.6.0, add capture title setter 2022-11-21 13:49:15 +00:00
baldurk 3ec6986ac4 Test that descriptor arrays of dynamic UBOs have offsets replayed 2022-11-18 14:21:14 +00:00
baldurk 428862d737 Test resolve attachments in D3D12 render passes 2022-11-18 14:04:57 +00:00
baldurk a37f62124d Test integer texture loads in D3D shader debugging 2022-11-18 14:01:59 +00:00
baldurk 037dd63d83 Fail D3D12 amd shader extensions test if UAV bind slot isn't supported
* UE5 checks for this feature so we'll also check for it.
2022-11-18 12:43:30 +00:00
baldurk 62bfec8442 Test empty submits are properly processed 2022-11-18 12:37:45 +00:00
baldurk 5aae46a86e Test out-of-bounds descriptor access in D3D12 indexing test 2022-11-18 12:24:05 +00:00
baldurk 1f34b0ba57 Test D3D12 descriptors with 0 or ~0 as mip count 2022-11-17 18:22:57 +00:00
baldurk 16f7791437 Test more edge case root signature mappings with D3D12 shader debug 2022-11-17 18:22:57 +00:00
baldurk 108e4695df Add a test for resources being accessed in-shader then overwritten 2022-11-17 18:22:57 +00:00
baldurk f2f77716ad Test that vkEnumeratePhysicalDevices correctly handles undersized array 2022-11-17 18:22:57 +00:00
baldurk 1303a50cf5 Sampler tables should not be marked as data volatile (the default) 2022-10-28 14:13:06 +01:00
baldurk 338541cf3f Handle streams properly in vulkan GS output fetch. Closes #2745
* We only display the rasterized stream in the mesh output view.
2022-10-12 16:08:59 +01:00
baldurk 9d18db67a7 Fix some edge case pNext struct usages. Closes #2749 2022-10-12 13:04:34 +01:00
baldurk 18f41c6fb6 Add test of secondary command buffer dynamic rendering 2022-10-07 11:20:06 +01:00
baldurk 478ea838dd Update vulkan and SPIR-V headers to latest 2022-10-06 16:48:34 +01:00
baldurk 0afd742232 Check that S8 format is actually supported 2022-09-19 16:44:56 +01:00
baldurk a04321fdb6 Handle D3D12 tier 1 VRS devices better when testing 2022-09-19 16:44:56 +01:00
baldurk aa412ddf89 Don't hard-fail on results of undefined tests in shader debug zoo 2022-09-19 16:44:56 +01:00
baldurk 1fa4fed24a Check for shader 64-bit support before using them in tests 2022-09-19 16:44:56 +01:00
baldurk 4e4a7518fa Ensure inline uniform blocks have descriptor pool space allocated 2022-09-19 16:44:56 +01:00
baldurk be4f10557c Update vulkan header files to latest 2022-08-05 13:29:16 +01:00
baldurk 0b187934de Track bytes written for hidden SO counters. Closes #2662
* The D3D11 spec is unclear but checking sources including D3D11On12 it looks
  like the defined behaviour for SO counters is to calculate the number of bytes
  written and divide that by the VB stride on draw.
* Old captures can't be updated to work with this because the stride is unknown,
  but new captures will work correctly as well as any data that is stream'd out
  mid-capture.
2022-07-22 16:10:59 +01:00
Jake Turner fca14eac32 Apple minimal Nuklear implementation using AppKit 2022-07-18 13:13:37 +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
Jake Turner 4e13b1ad38 Update Metal CPP to support tests project
Copy Metal driver metal-cpp files to the tests project for use in the tests project

Add extensions from Learn Metal-cpp project: https://developer.apple.com/metal/cpp/

https://developer.apple.com/metal/LearnMetalCPP.zip

Custom additions to Metal CPP to get NSApplication, NSView, NSWindow, CAMetalLayer to work stand alone without requiring MetalKit library.
2022-07-08 11:08:18 +01:00
Jake Turner 5b2b988bb3 Test changing vulkan compute shader entry-point
Commit for original bug fix:
"Fix entry-point remapping when editing compute shaders on vulkan"
c81a522360
2022-07-05 13:37:47 +01:00
baldurk 8e4b44aed7 Add test of integer offsets on texture sample for D3D shader debug 2022-06-30 13:51:26 +01:00
baldurk de619024c8 Test for extended UAV support in D3D11 test 2022-06-30 13:51:26 +01:00
baldurk 1928315de5 Fix a copy-paste error in D3D12_Compute_Only test 2022-06-24 13:34:46 +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 687c11ba68 Fix handling of 64-bit integer vertex attributes in mesh output fetch 2022-06-20 16:47:50 +01:00
baldurk e15df3a75c Test that glBindProgramPipeline(0) generates no errors 2022-06-17 17:27:30 +01:00
baldurk db06aaa2de Test that recreating renderbuffers doesn't leak resources 2022-06-17 17:27:30 +01:00
baldurk 95c8a3f42e Test swizzles of UAV reads 2022-06-17 17:27:30 +01:00
baldurk 4a0bc691a7 Add test that solid/lit rendering works on points and lines 2022-06-17 17:27:30 +01:00
baldurk 71d7f000c4 Add test for D3D12 texture contents including with DENY_SHADER_RESOURCE 2022-06-17 17:27:30 +01:00
baldurk 20b496fc7a Add test of integer bare uniforms on GL 2022-06-17 17:27:30 +01:00
baldurk ef003ec881 Test depth bounds serialisation on GL 2022-06-17 17:27:30 +01:00
baldurk 6a006625f2 Ignore rasterizerDiscardEnable == true if it is dynamic. Closes #2617
* Normally we have to ignore subsequent states as potentially garbage pointers
  if discard is enabled, but when it's dynamic state we have to ignore its
  valid.
2022-06-17 10:46:14 +01:00