Commit Graph
10044 Commits
Author SHA1 Message Date
baldurk 8fa93105f2 Fix some casts/calculations to keep PVS Studio happy
* It identifies some potential overflows which we know likely won't happen, but
  the fixes are harmless.
* Some issues are definitely bad, though not actual bugs.
2020-01-21 18:28:56 +00:00
baldurk baac06ca93 Remove redundant/dead code identified by PVS Studio 2020-01-21 18:28:56 +00:00
baldurk 68b9d223b0 Add explicit comparisons where we were implicitly checking for non-zero
* This fixes some warnings from PVS Studio, though none of these checks were
  actually wrong it's better to be explicit.
2020-01-21 18:28:56 +00:00
baldurk 421201df7a Fix support for fetching postvs from vertex shaders using subgroups 2020-01-21 18:28:56 +00:00
baldurk a2ce7215ff Ensure work is flushed before D3D12On7 presentation 2020-01-21 18:28:55 +00:00
baldurk 22dd60e0f1 Support MSAA backbuffers for headless outputs on D3D12 2020-01-21 18:28:55 +00:00
baldurk 5df64ac8b0 Enable line AA on D3D12 mesh rendering 2020-01-21 18:28:55 +00:00
baldurk 1ff3879815 Don't try to present on D3D12On7 for headless outputs 2020-01-21 18:28:55 +00:00
baldurk ba9f0c0e89 Make sure replay contexts tidy up share groups correctly 2020-01-21 18:28:55 +00:00
baldurk db0779e09b Add test for mesh view - vertex picking and mesh rendering 2020-01-21 18:28:55 +00:00
Steve KarolewicsandBaldur Karlsson 36e81aba5d Change SRV/UAV fetching to be on-demand, when needed by an instruction 2020-01-21 18:28:42 +00:00
Steve KarolewicsandBaldur Karlsson 8fb23b9010 Add SM 5.1 resource binding support to shader debugging
With SM 5.1, instructions specify a resource by a logical identifier,
but root signatures specify them with a base register and register
space. Find the appropriate declaration and retrieve the data needed
for resource lookup.
2020-01-20 17:46:16 +00:00
baldurk a5c54b3ce7 Don't pass event ID to PickVertex()
* It's meaningless to try and pick on any other event but the current one
2020-01-20 17:44:34 +00:00
baldurk a4961df6f0 Don't return an index byte stride if postvs data doesn't use indices
* Since we use the index byte stride to indicate whether a draw is indexed or
  not, returning a valid value here is misleading.
2020-01-20 15:04:14 +00:00
baldurk 2ecee8fc54 Fix D3D error in D3D11_Deferred_Map 2020-01-20 14:57:00 +00:00
baldurk 210626ae18 When updating postvs position/secondary configs, reset camera properties 2020-01-20 14:32:22 +00:00
baldurk cd3ef3dd55 Fix near/far plane specifiers being backwards 2020-01-20 14:28:59 +00:00
thisisjimmyfbandbaldurk 0734776a49 added test demo and script for opengl backdoor context 2020-01-20 13:41:18 +00:00
thisisjimmyfbandbaldurk 68ea2ddd67 fixed a problem with wglMakeCurrent failing
the issue of deleted DC making backdoor context
2020-01-20 13:39:13 +00:00
thisisjimmyfbandbaldurk c7c929eca9 Backdoor context for opengl resource retrieval 2020-01-20 13:38:30 +00:00
baldurk 11f1f30b46 Fix crash when mapping textures on deferred contexts 2020-01-20 12:23:47 +00:00
baldurk 42841e23be Expose vulkan layer registration in renderdoccmd on win32. Closes #1690
* This is needed so that the functional tests can elevate and run renderdoccmd
  to register the vulkan layer, if needed.
* At the same time remove the old spammy message and ignore flag - this dates
  back to before the UI existed, and that should be the way users run RenderDoc
  generally and it has a good UI for walking through layer registration if
  needed.
* The command is always available, but will only show up in help if attention is
  needed.
* Also fix registering installs on shared drives.
2020-01-20 11:46:48 +00:00
baldurk 78c68d643a Fix viewport when rendering custom shader on mips. Closes #1688 2020-01-17 19:53:39 +00:00
baldurk 4895219d59 Disable blending when rendering custom shader output 2020-01-17 19:53:39 +00:00
baldurk c98500e657 Fix pixel picking from custom shader output in image viewer. Refs #1688 2020-01-17 19:53:39 +00:00
baldurk ec5e63a53f Ensure component count is set correctly for special formats. Refs #1688 2020-01-17 19:53:38 +00:00
baldurk d4e723bfd8 Fix bugs identified by using PVS Studio
* A few copy-paste errors, some tautological checks indicating errors, missing
  return value checks.
2020-01-17 19:53:38 +00:00
baldurk cec30d499a Use ToStr() instead of %llu to format Resource IDs 2020-01-17 19:53:38 +00:00
baldurk 4a587da167 Account for byte offset when expanding arrays in bufferviewer formatter 2020-01-17 19:53:38 +00:00
baldurk e347912479 Don't set TextureCategory::SwapBuffer on image viewer texture
* This prevents toggling linear/gamma display because swap buffers are always
  interpreted as gamma.
2020-01-17 19:53:38 +00:00
Steve KarolewicsandBaldur Karlsson 654acb67f5 Add register space support for shader global state UAV/SRV data
Instead of fixed arrays, the global state stores a map of UAVs and
SRVs, with the key being a pair of the shader register and register
space. Switched D3D12 sampler/gather to use SM5.1 and handle register
spaces.
2020-01-17 19:53:23 +00:00
Alex VakulenkoandBaldur Karlsson 6cd2d18d9e Fix build break on VS2019 due to implicit wchar_t->char conversion
Converting std::wstring to std::string by constructing the latter with
wchar_t iterators result in implicit conversion of wchar_t to char which
trips Visual Studio 2019 compiler into throwing a warning of potential
data loss during conversion. Use conv() helper function to do the
conversion and please the compiler at the same time.
2020-01-17 19:53:09 +00:00
baldurk 526240f2d5 Fix order of functions to ensure non-SRGB format in pixel history 2020-01-16 23:06:24 +00:00
baldurk a1e662eb30 Fix mismatched GLMarkerRegion after changing context 2020-01-16 23:06:23 +00:00
baldurk 08b2572554 Fix precision loss when downcasting to HDR/EXR identified by @iOrange
* When outputting to a format supporting more than 8-bit data, we don't want to
  lose precision by downcasting e.g. D32S8 to RGBA8, instead use RGBA32.
2020-01-16 23:06:23 +00:00
baldurk 892abb686f Apply clang-format to demos project as well 2020-01-16 23:06:23 +00:00
baldurk ca07c1626e Fix MSAA mismatch in mesh view output rendering 2020-01-16 23:06:23 +00:00
Jeremy OngandBaldur Karlsson 29403836c6 Fix numerous compiler warnings and errors
Depending on OS and compiler, certain types may not be included
transitively by headers that were included previously. This commit
produces a clean build on the latest trunk versions of GCC, Clang,
and QT.
2020-01-16 23:05:58 +00:00
Steve KarolewicsandBaldur Karlsson 7076e674ca Change boundDescs to a rdcpair to avoid perf issues at runtime
With large bindless descriptor tables, traversing all entries to
fill the boundDescs vector was a perf bottleneck. By switching to
storing the first descriptor pointer and a count, the bottleneck is
eliminated. Traversal during queue submit is slightly more complicated
but the same number of descriptors are visited.
2020-01-16 23:05:46 +00:00
Benson JoerisandBaldur Karlsson f12ae2d9fa Fix alignment for mapped memory when loading initial contents
Change-Id: If40878b6b7a190237c3686463c7358bb033c8b06
2020-01-16 23:05:31 +00:00
Benson JoerisandBaldur Karlsson 84fd1858ca Fix missing SAMPLER descriptor type
Change-Id: If1e466bb0479fee914e5b8c0cbca5f54b327229d
2020-01-16 23:05:19 +00:00
Aliya PazylbekovaandBaldur Karlsson 8891a8d6fd VK pixel history: refactor, and add outline of additional callback
- Add an outline of another callback used to detect which tests
failed.
- Refactor to make it easier to add additional callbacks: add shader
cache to keep track of created shaders and share them between
callbacks.
2020-01-16 23:05:09 +00:00
Aliya PazylbekovaandBaldur Karlsson 791d1089b0 Add drawcall callbacks to end and next renderpass cmds
For Vulkan pixel history vkCmdEndRenderPass and vkCmdNextSubpass
can represent a modification, since it might be doing an implicit
image resolve. Pixel history is using drawcall callbacks to figure
out values pre- post- events, and vkCmdEndRenderPass and
vkCmdNextSubpass might be such events.

Also adds clear image usage to vkCmdBeginRenderPass(2) for images that
have VK_ATTACHMENT_LOAD_OP_CLEAR.
2020-01-16 23:04:53 +00:00
Steve KarolewicsandBaldur Karlsson 1403162a39 Unwrap resource when the application calls AssertResourceState 2020-01-16 12:32:37 +00:00
baldurk b41c36427a Bump version to 1.7 2020-01-15 14:42:42 +00:00
baldurk 0e7f772596 Add Vulkan 1.2 support v1.6 2020-01-15 14:00:30 +00:00
baldurk 2418a8faef Add a per-test duration log when running tests 2020-01-15 11:24:41 +00:00
baldurk 1a2876af62 Disable crash handler on opera as well 2020-01-15 10:02:20 +00:00
baldurk 82fca7d325 Make the display_window.py example quit after a few loops 2020-01-15 10:02:20 +00:00
baldurk 7d22448d3f Sample code should take the capture to load as an argument
* This makes it easier to run the examples from the command line without editing
  them
2020-01-15 09:23:12 +00:00