Commit Graph

882 Commits

Author SHA1 Message Date
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 6d7832df6f Update testing docs with info about Apple
Adding note about using "--demos-binary" option to specify the filepath of the demos binary as an alternative to making sure the demos binary is in the PATH.

Fixed a typo "can'tbe" -> "can't be"
2022-07-08 11:08:18 +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 01184079c3 Test editing vulkan compute shader
Replace existing HLSL compute shader with a GLSL compute shader
2022-07-05 13:37:47 +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 4dc80c1793 Use non-legacy ASIC to generate AMDIL
* This may break on drivers old enough to not recognise the first non-legacy
  ASIC, but that is much rarer than new drivers that have dropped support for
  the old ones.
2022-06-30 15:41:45 +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
Jake Turner 81436706c8 Recursive patching of qt external dependencies
Recursively copy and repoint the external libraries and their external dylib dependencies
2022-06-23 12:10:35 +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 183f50bfb7 Fix patching of qt dependencies 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 fd2ae37a8b Test overlay rendering with separable shader programs 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
baldurk 3e9a72071d Update to latest VK and SPIR-V headers
* This also adds support for VK_KHR_fragment_shader_barycentric as a mostly in-
  place upgrade from the NV extension
2022-06-06 18:35:29 +01:00
baldurk 1f1f1fae2d Fix some issues with tests found running on linux 2022-05-26 13:43:46 +01:00
baldurk da974ad5cf Fix test failing if compiler eliminates dead inputs 2022-05-24 13:31:04 +01:00
baldurk a351fc14f4 Fix tests for API changes 2022-05-24 12:48:17 +01:00
baldurk e925688913 Fix use-after-free when freeing vulkan postponed memory. Closes #2573 2022-05-23 13:56:05 +01:00
baldurk 8566d55650 Add missing value check in GL_CBuffer_Zoo 2022-05-20 14:15:31 +01:00
baldurk cef00a102b Add struct VarType and combine flags into single field
* This is not a space saving right now, but allows more flags to be added
  without adding more storage.
2022-05-20 13:37:25 +01:00
baldurk 4953adde03 Add a test of KHR_Dynamic_Rendering
* Not all possible interactions are currently tested, but at least the ones that
  have been broken in the past.
2022-05-03 18:47:27 +01:00
baldurk cfdbc3da57 Remove outdated experimental feature check 2022-05-03 15:30:47 +01:00
baldurk a9562c87f5 Test that discard patterns don't disturb bound state on vulkan 2022-05-03 15:30:20 +01:00
baldurk 96a7639c2e Add test of flow control constructs in D3D11 shader debugging 2022-05-03 14:06:07 +01:00
baldurk 04c62f9595 Add a test debugging shaders on D3D12 with banned flags in the root sig 2022-04-28 14:19:38 +01:00
baldurk c1240effe3 Test alternative functions for binding contexts on GL 2022-04-28 14:05:38 +01:00
baldurk 7066692262 Test that sampler heaps are represented in structured data properly
* This is a test of a specific case of lazy serialisation, but in particular
  D3D12 descriptors do some aliasing tricks for types to compress the data, so
  repeated serialisation needs to be safe.
2022-04-28 13:39:37 +01:00
baldurk 8aa0390948 Add string messages to returned result codes to display to user
* Most of the main entry points that can fail with relevant reasons now has a
  way of specifying a message to return with it. This message can be displayed
  to the user to give more information or context about an error.
2022-04-26 16:21:54 +01:00
baldurk 7aa7f1da99 Generate .sig files after signing installers 2022-04-26 13:20:09 +01:00
Jake Turner aef7fc698b Add header files to demos CMakeLists.txt
Helpful for source browsing when using an IDE project generated by CMake

Potential list of header files found using:

find util/test/demos -name '*.h' \! -path "*3rdparty*" \! -path "*official*"
2022-04-25 12:08:51 +01:00
baldurk da08c10c41 Update vulkan & SPIR-V headers to latest 2022-04-13 12:19:15 +01:00
Benoit Dumesnil 2ace1fe84d Add test of D3D12 bindless feedback for shadermodel 6.6. 2022-03-21 11:30:47 +00:00
Benoit Dumesnil e47450a43b Fix test of D3D12 bindless feedback.
Fix a typo in a comment in D3D12_Descriptor_Indexing.py.
Fix UAV using a typed buffer view instead of a structured buffer view.
Fix SetDescriptorHeaps being called before ClearUnorderedAccessViewUint
2022-03-21 11:30:47 +00:00
Benoit Dumesnil 29770ef762 Update D3D headers in test project to latest D3D12 headers 2022-03-21 11:30:47 +00:00
baldurk 345206b2b8 Fix validation error with inline uniform block writes 2022-03-17 18:10:05 +00:00
baldurk fcdea67879 Update copyright years to 2022 2022-02-17 17:38:32 +00:00
baldurk f573b55012 Fix broken call to BecomeRemoteServer 2022-02-16 13:14:58 +00:00