Commit Graph

456 Commits

Author SHA1 Message Date
baldurk ca7c1bbba9 Support push constants the same as constant buffer data 2020-04-15 20:33:56 +01:00
baldurk f4e141e843 Handle invalid pointers in create info when viewport state is dynamic 2020-04-15 20:33:56 +01:00
Aliya Pazylbekova 772905c4d3 Basic Vulkan pixel history test
+ a small pixel history fix for figuring out if depth test failed
- the test demo is based on overlay demo, with a few modifications so
  far: added a draw that will fail on culling, added shader discard for
  any pixel with x = 150
- tests some basic failed tests: stencil, depth, culling, shader discard
2020-04-14 23:06:28 +01:00
baldurk 07f60abf9e Implement OpIsNan and OpIsInf 2020-04-14 18:02:10 +01:00
baldurk 22dcb1f539 Centralise calculation of derivatives, implement OpFwidth* 2020-04-14 17:55:29 +01:00
baldurk 139d53e5e1 Add some type variants of supported glsl450 functions 2020-04-14 17:41:32 +01:00
baldurk 91e7563d09 Add support for glsl450 min/max/clamp 2020-04-14 17:16:18 +01:00
baldurk 72d7e828b0 Add OpNot to bitwise tests 2020-04-14 17:16:17 +01:00
baldurk b8f18534e2 Test OpConvertFToU/S and OpConvertU/SToF 2020-04-14 17:16:17 +01:00
baldurk 97fb6b38ae Test OpCompositeExtract on vectors 2020-04-14 16:05:50 +01:00
baldurk b7bfbe3dba Refactor assembly tests to need less manual work
* We auto generate test cases, unique-ify identifiers, and add constants as
  needed
2020-04-14 15:45:45 +01:00
baldurk ba1c719179 Add fmtlib to demos for string formatting 2020-04-14 14:25:49 +01:00
baldurk 2318305c96 Implement OpVectorExtract/InsertDynamic 2020-04-13 18:24:47 +01:00
baldurk a9f7819bf7 Handle implicit lod samples by pushing in calculated derivatives 2020-04-13 18:24:47 +01:00
baldurk a61822cfe1 Generate SPIR-V shader to implement some image samples on 2D image 2020-04-10 20:52:09 +01:00
baldurk b47e13beaa Test cbuffer access 2020-04-09 18:36:12 +01:00
baldurk 6676f83671 Set up descriptors and push constants for use in future tests 2020-04-09 18:36:12 +01:00
baldurk d68aa1cd83 Implement OpCompositeInsert 2020-04-09 11:12:09 +01:00
baldurk b99b0214ae Implement bitwise operations 2020-04-08 18:39:03 +01:00
baldurk 3a6e13e902 Don't run vulkan shader debugging tests if debugging isn't available 2020-04-08 18:39:03 +01:00
baldurk 975f40db9c When using glslc command line to build SPIR-V asm, add file extension 2020-04-08 18:39:03 +01:00
baldurk 3d29947367 Fix odd linux compile error in tests 2020-04-08 18:39:03 +01:00
baldurk 96c7eb0b93 Add OpSMod support with other modulo operations 2020-04-08 18:39:03 +01:00
baldurk 8a6dbd7045 Implement OpDot 2020-04-08 18:39:02 +01:00
baldurk 59c3a2fbd9 Implement matrix multiplication with matrix/vector/scalar 2020-04-08 18:39:02 +01:00
baldurk 33eb5a631f Implement Op*Negate 2020-04-08 18:39:02 +01:00
baldurk 57400e1bf8 Add support for extended instruction sets
* Implement a few instructions in GLSL.std.450
2020-04-08 18:39:02 +01:00
baldurk 27bd045ea3 Remove undefined behaviour tests (divide/modulo by zero) 2020-04-08 18:39:02 +01:00
baldurk 0be0e02ebe Fix missing/wrong int-to-float conversions 2020-04-08 18:39:02 +01:00
baldurk 1d64fffd42 Add tests of new operations in SPIR-V ASM 2020-04-07 23:21:17 +01:00
baldurk d8fa0b624d Implement derivatives 2020-04-07 18:37:13 +01:00
baldurk 38abf04909 Set up python script to run VK shader debug tests
* Since we expect many more tests it also runs the test texture in a 2D grid
  with N drawcalls
2020-04-07 17:43:30 +01:00
baldurk 5e2de7dd34 Fix issues switching between mips with overlays on vulkan 2020-04-07 14:05:43 +01:00
baldurk fd36ec0bc1 Add shader debug zoo test
* This includes SPIR-V tests to test specific opcodes.
2020-04-03 18:43:58 +01:00
baldurk feafbde8bc Add GL hack to check for implicit thread switching
* This is a very big blunt hammer for fixing the problem of multithreaded
  submission from GL. Every GL call checks to see if the context changed (which
  would only happen from a thread switch to a different context) and if detected
  it inserts a manual MakeCurrent call equivalent.
* It's slow to capture (when this happens - checking is not particularly slow)
  and slow to replay, but it's functional which is an improvement.
2020-04-02 18:15:44 +01:00
baldurk ea6cc026ae Allow de-activating GL contexts in tests 2020-04-02 18:15:44 +01:00
baldurk d279d6dcd2 Silence D3D debug layer spam by including NULL terminator 2020-04-02 18:15:44 +01:00
baldurk 230cf69761 Test integer division by zero in DXBC debugging 2020-04-01 17:18:59 +01:00
baldurk 9372fa879a Don't allow PNG files to fail to open in Texture_Zoo test 2020-04-01 14:10:57 +01:00
baldurk 55437ee0f9 Add license attribution for Compressonator 2020-03-23 11:05:24 +00:00
baldurk 4c5b209e6f Test constant buffer offsetting in cbuffer zoo tests 2020-03-20 16:16:52 +00:00
baldurk 7ff8a95205 Don't end stream-out queries twice 2020-03-20 16:16:52 +00:00
Daniel Craig 35a3c09b6e Apply clang format to inl files from clang_format_all.sh 2020-03-20 16:16:01 +00:00
baldurk 59f06a12f0 Fix crashes with indirect count draws in secondary command buffers
* We need to patch the event count in both primary and secondary command buffers
  in this case
2020-03-19 17:16:19 +00:00
baldurk ac77b7899d Remove VK_Indirect use of image comparisons 2020-03-19 17:16:19 +00:00
baldurk f8a6cbb0c7 Clear mips/slices in overlay on GL to avoid undefined contents 2020-03-19 17:16:19 +00:00
baldurk cd674539fd Change shader debugging tests to check at runtime if it's available
* The config values can be loaded in the tests now.
2020-03-18 17:34:59 +00:00
baldurk d408f77241 Add configuration system for core renderdoc module
* This allows persistent config storage and registering tweak variables that
  works independent of the UI's configuration.
* Config vars can be debug only, which means they will be compiled out in stable
  version releases. This allows for debug-logging tweaks that are available in
  all builds (including nightly builds) for diagnostic purposes, but have zero
  overhead in stable releases.
* Variables have a loose hierarchy defined with _ or . to separate nodes.
2020-03-18 17:34:59 +00:00
Steve Karolewics 67447b7b7e Improve handling of resource arrays for D3D12
When getting read only resources from the pipe state, stitch back up
according to the bindpoint mappings. When displaying resources in UI,
don't traverse unbounded arrays. Fix resource swizzle on load/sample/
gather instructions, which happens on fetch result, not on the source
operand. Added more tests for unbounded arrays and different ways to
index into arrays.
2020-03-16 20:01:30 +00:00
baldurk 40611a3dde Test subresource rendering in overlay tests, remove png comparisons 2020-03-12 16:51:19 +00:00