baldurk
707edac523
Check that memory allocation succeeded before mapping memory
...
* This fixes a potential crash if we allocate memory then map it immediately
without checking
2022-12-22 16:21:54 +00:00
baldurk
2697a2add8
Prefer using driverID instead of vendorID for checks. Closes #2804
2022-12-22 16:04:27 +00:00
baldurk
1f4932747e
Reduce error to warning to prevent debugbreaks
2022-12-22 16:04:04 +00:00
baldurk
5e04ab288d
Fix intel vulkan driver version identification
2022-12-21 23:03:40 +00:00
baldurk
95c45c985e
Fix handling of descriptor copy&patching during replay
2022-12-21 23:03:40 +00:00
baldurk
9ad6a5d431
Abort early if a fatal error is encountered during load
2022-12-21 23:03:40 +00:00
baldurk
fee0218a33
Fix direct heap access not being displayed in D3D12 pipeline. Refs #2801
2022-12-21 23:03:39 +00:00
baldurk
7b9c4c782e
Fix handling of CmdEvent2 APIs to properly handle partial replay
2022-12-21 23:03:39 +00:00
baldurk
e3b362ff58
Fix tracking of image states on selecting CmdEvent EIDs
2022-12-21 23:03:39 +00:00
baldurk
a40d61b72f
Don't access invalid counter description for EID column in counter view
2022-12-21 23:03:39 +00:00
baldurk
8c6566c6b8
Don't crash in glslang reflection fallback path if shaders don't compile
2022-12-21 23:03:39 +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
Jonathan Glines
a08a9d8190
Enable external links in counter selection UI
...
Use QTextBrowser for the counter description widget, which allows for opening
links in an external browser.
This change is needed to make the link to NVIDIA Nsight Perf SDK clickable.
2022-12-21 23:02:50 +00:00
Jonathan Glines
e5bb692caf
Fix performance counters without a category
...
In the performance counter selection dialog, show counters without a category
at root of tree, rather than as children of a nameless "" category.
2022-12-21 23:02:50 +00:00
Jonathan Glines
9bebaaed8b
Collect Nsight Perf SDK counters in OpenGL
...
This adds the NVGLCounters class, which implements OpenGL counter
collection on NVIDIA hardware via the NVIDIA Nsight Perf SDK.
2022-12-21 23:02:50 +00:00
Jonathan Glines
07ebb25a23
Collect Nsight Perf SDK counters in Vulkan
...
This adds the NVVulkanCounters class, which implements Vulkan counter
collection on NVIDIA hardware via the NVIDIA Nsight Perf SDK.
Some modifications are made to the NvPerfUtility headers in order to
use the Vulkan dispatch tables from RenderDoc.
On Windows, the VK_KHR_external_semaphore_win32 extension is required
for synchronization with the NvPerf "service pending GPU operations"
thread.
2022-12-21 23:02:50 +00:00
Jonathan Glines
8d45dae36e
Collect Nsight Perf SDK counters in D3D11
...
This adds the NVD3D11Counters class, which implements D3D11 counter
collection on NVIDIA hardware via the NVIDIA Nsight Perf SDK.
2022-12-21 23:02:50 +00:00
Jonathan Glines
abab16f8c6
Collect Nsight Perf SDK counters in D3D12
...
This adds the NVD3D12Counters class, which implements D3D12 counter
collection on NVIDIA hardware via the NVIDIA Nsight Perf SDK.
A helper class NVCounterEnumerator is added to provide functionality
common to NVIDIA counters for other graphics APIs.
2022-12-21 23:02:50 +00:00
Jonathan Glines
2b5268b898
Fix Clang 12 compile errors for NvPerfUtility headers
...
Compile errors include missing EOL newline, missing override keyword for member
function, and implicit long to int conversion.
2022-12-21 23:02:50 +00:00
Jonathan Glines
1f2af20458
Fix VS2015 compile errors for NvPerfUtility headers
...
All of these compile errors are from implicit bool conversions.
2022-12-21 23:02:50 +00:00
Jonathan Glines
197a8dd4d7
Avoid gcc unused argument warning in NvPerfUtility
2022-12-21 23:02:50 +00:00
Jonathan Glines
42243597c4
Hide Vulkan symbols in NvPerfUtility
...
Adds the macro NV_PERF_UTILITY_HIDE_VULKAN_SYMBOLS to NvPerfUtility, which
allows for passing Vulkan function pointers without linking with Vulkan symbols
that are not present in RenderDoc.
2022-12-21 23:02:50 +00:00
Jonathan Glines
2bcbdd516e
Load dxgi function at runtime in NvPerfUtility
...
This is to avoid linking with dxgi at build time.
2022-12-21 23:02:50 +00:00
Jonathan Glines
68b33519d1
Add MetricsConfigBuilder::GetNumPasses() to NvPerfUtility
...
This method is used to calculate the expected maximum number of replays and
enforce an upper-bound on the replay loop.
2022-12-21 23:02:50 +00:00
Jonathan Glines
838abd8a82
Add Nsight Perf SDK to Visual Studio filters file
2022-12-21 18:17:34 +00:00
Jonathan Glines
03bd7e5623
Added NVIDIA Nsight Perf SDK 2022.3 with 28Sept2022 EULA
...
Does not include any binaries or sample applications. Just the header files,
release notes, and licenses.
2022-12-21 18:17:34 +00:00
baldurk
66d6793f5e
Handle compute-queues properly with vulkan counters. Closes #2795
2022-12-20 19:10:44 +00:00
baldurk
5a576c6957
Fix texture zoo tests not properly running tests on PNG loaded data
2022-12-15 15:20:11 +00:00
baldurk
900ff975b3
Don't drop sRGB flag when getting texture data. Refs #2787
...
* This would cause incorrect data to be saved when saving from an SRGB texture
to an SRGB format like PNG/JPG etc.
2022-12-15 15:20:11 +00:00
baldurk
0a0fe7b021
Correctly round generated SNORM data in texture zoo tests
2022-12-15 15:20:11 +00:00
baldurk
843797846b
Always downcast for special formats
...
* This would previously have allowed RGB10A2 data to be written literally, as it
was otherwise detected as RGBA8.
2022-12-15 15:17:54 +00:00
baldurk
e33f1c1329
Add D32 conversion properly for DDS files
2022-12-15 15:17:15 +00:00
baldurk
013527b59c
Some legay DDS formats should only be used for non-SRGB data
2022-12-15 15:17:05 +00:00
baldurk
3bd97a3b82
Show sections as failed with their own failed status
2022-12-15 13:34:46 +00:00
baldurk
eab6a2c73c
Fix python comparison operators throwing exceptions
...
* When used in richcompare this would throw an exception and return
Py_NotImplemented causing a failure. Instead we should just return NULL, which
is fine and will be considered as a not-equal comparison for
equality/inequality and throw the kind of exception we want for less than or
greater than.
2022-12-13 11:12:45 +00:00
baldurk
b3ae354645
Handle reflecting nested pointer types properly in SPIR-V
2022-12-12 17:21:19 +00:00
baldurk
0a4522b32a
Refactor D3D12 resource usage to be less rootsig-authoratitive
...
* The root signature is not a good model for what resources are actually used,
instead use the shader reflection as we do on other APIs. In either case this
does not work for bindless access (> 1000 registers).
2022-12-12 15:23:29 +00:00
baldurk
e9702cb32f
Fix typo accessing incorrect array of resources in pipe state
2022-12-12 13:58:48 +00:00
baldurk
311f135324
Correctly handle CPU access to NPOT BCn textures on D3D11. Closes #2792
2022-12-12 13:14:50 +00:00
Jake Turner
25f764e702
Mac: Add 'pcre' to Mac required dependencies
2022-12-10 20:24:40 +01: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
00c5ae8e22
Mark pipeline layout referenced in push descriptor commands
2022-12-09 09:08:33 +00:00
baldurk
cdf1bf5e3b
Account for baseVertex when patching line strip index buffer
2022-12-06 17:33:16 +00:00
baldurk
e386b1fb2b
Initialise dynamically used count to 0 even without dynamic feedback
...
* Since we increment this for every descriptor when we don't have feedback, we
can't have it start at ~0U
2022-12-06 15:27:02 +00:00
baldurk
52e25fda6a
Account for immutable samplers with push descriptors
2022-12-06 14:57:49 +00:00
phantom10111
e75e95033b
Fix locating dxc.exe during Windows build
...
It appears that on some machines (including mine), the registry key
which contains the installation path to Windows SDK is located under
"HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\...". Update renderdoc project
files to search that key as well.
2022-12-06 15:22:24 +01:00
baldurk
6a9872e56c
Fix empty spacer-elements in descriptor arrays being marked as used
2022-12-05 17:00:11 +00:00
baldurk
27957bc614
Fix off-by-one fetching callstack in DXBC. Closes #2786
2022-12-05 15:33:04 +00:00
baldurk
92f554e0e7
Bump version to v1.25
2022-12-05 15:29:10 +00:00