baldurk
20be9f3d52
Add ReplayOptions struct to contain replay-time configuration
...
* Not currently exposed to the UI or used by the drivers, we just pass the
default object through
2019-08-27 18:51:56 +01:00
baldurk
878acd4ad9
Add a function to enumerate which GPUs are available at replay time
2019-08-27 18:51:56 +01:00
baldurk
d81331918e
Save info about the used GPU on D3D11, D3D12 and GL
...
* On GL this is purely informational, but on D3D11 and D3D12 we use this to
select the closest available adapter on replay, as we already do on Vulkan.
2019-08-27 18:51:56 +01:00
baldurk
8c6fc67acd
Make it extra clear that RenderDoc needs to find the Android SDK
2019-08-27 18:51:56 +01:00
baldurk
04a221226d
Identify Google Swiftshader and Microsoft WARP PCI vendor IDs
2019-08-27 18:51:55 +01:00
baldurk
f46ec7c21e
Fix leaking resource when creating dummy/proxy vulkan driver
2019-08-27 18:51:55 +01:00
baldurk
f53f52b172
Fix loads of subsequent D3D12On7 captures
2019-08-27 18:51:55 +01:00
baldurk
c579c6f264
Be a bit more explicit about the GL disassembly being SPIR-V if it fails
2019-08-27 18:51:55 +01:00
Connor Abbott
09e6d7ca58
Only copy existing bindings in PatchReservedDescriptors()
...
* Fixes a crash when looking at certain draws in No Man's Sky, which
apparently sometimes binds a descriptor set with fewer bindings than the
layout specified.
2019-08-26 17:08:34 +01:00
baldurk
6971a585aa
Fix compilation on 32-bit windows
2019-08-26 16:52:09 +01:00
baldurk
af3c242b35
Fix signed/unsigned comparison
2019-08-26 14:52:58 +01:00
baldurk
d6289b93d0
Fix check for whether LastCaptureFilePath should be updated
2019-08-26 13:49:58 +01:00
baldurk
2ed4547fe8
Implement support for VK_IMG_filter_cubic / VK_EXT_filter_cubic
2019-08-26 13:33:43 +01:00
baldurk
3b524ea7f1
Fix reflection of arrays-of-binds - textures and buffers
2019-08-26 13:22:26 +01:00
baldurk
d38109d047
Fix bindless feedback SPIR-V modification
2019-08-26 13:10:18 +01:00
baldurk
b2d8f12fa6
Fix replay of single-int uniforms
2019-08-24 15:49:49 +01:00
baldurk
2a8d7eddec
Set sampler name for combined image/samplers in pipeline HTML export
2019-08-23 23:41:19 +01:00
baldurk
cf6a021db9
Ignore descriptor writes with descriptorCount == 0
2019-08-23 19:27:52 +01:00
baldurk
c2fe16b44a
Add support for D3D12On7
2019-08-22 18:43:48 +01:00
baldurk
346ee91f70
Store location not byte offset for loose globals in SPIR-V
2019-08-22 10:16:18 +01:00
baldurk
4c9fec4cb4
Fix calling convention on vulkan layer function. Closes #1500
2019-08-22 10:14:39 +01:00
baldurk
c077e8f992
DXC does not have command line parameters in OpModuleProcessed
2019-08-20 15:33:12 +01:00
baldurk
a0bc429bef
Handle a source line corresponding to multiple instructions
...
* This can happen with inlined functions
2019-08-20 15:33:12 +01:00
baldurk
4f37a3b15a
Handle typed UAV load/store from other formats than 32-bit DWORDs
...
* DX11 in feature level 11 didn't support these, but newer feature levels add
additional support that requires decode/encode and truncation to the right
width
2019-08-20 15:33:12 +01:00
baldurk
07158ad24c
Fix support for triangle fans on GL/Vulkan
2019-08-20 15:33:12 +01:00
baldurk
27dcb72b93
Update vulkan headers to 1.1.120
2019-08-20 15:33:12 +01:00
baldurk
0a48833e12
Only make text overlay resources visible in necessary shader stages
2019-08-20 15:33:11 +01:00
Aliya Pazylbekova
5ce8fc7f4a
Update name for compute pipelines to Compute Pipeline
...
From "Graphics Pipeline"
2019-08-16 19:43:42 +01:00
baldurk
d60f3020c8
Fix uninitialised variable
2019-08-16 19:08:05 +01:00
baldurk
9e68cbe59b
Fix typo in unit tests
2019-08-16 19:00:40 +01:00
baldurk
ee43d4377c
Account for pipeline specialisation constants when reflecting shaders
2019-08-16 17:38:35 +01:00
baldurk
e71f986f84
Set warning level on SPIR-V files in VS project
2019-08-16 17:38:35 +01:00
baldurk
759d034def
Update external code to use new SPIR-V reflector, remove old one
2019-08-16 17:38:35 +01:00
baldurk
dba34759b4
Add disassembly to new reflector
2019-08-16 17:38:35 +01:00
baldurk
2c815ab93e
Add new refactored & simplified SPIR-V reflector
2019-08-16 17:38:35 +01:00
baldurk
556cc5b4ae
Refactor spec constants to be stored as uint64_t
...
* A single spec constant can only contain one scalar (vectors are created with
composites). We can always store a scalar in uint64_t.
2019-08-16 17:38:35 +01:00
baldurk
0c3b827b35
Test specialization constant IDs and default values properly
2019-08-16 17:38:35 +01:00
baldurk
dc660aa26c
Allow building SPIR-V with debug info and check debug info in reflection
2019-08-16 17:38:35 +01:00
baldurk
47e10a5c2d
Split some parts of SPIRVEditor into SPIRVProcessor
...
* This will then be shared by a read-only Reflector, with common processing
to both happening in SPIRVProcessor with extra work happening in each child
depending on whether it's reflecting/disassembling or editing.
2019-08-16 17:38:35 +01:00
baldurk
936876234c
Move SPIR-V utility/parsing/editing code into rdcspv namespace
...
* Everything except the reflection code which will be replaced
2019-08-16 17:38:35 +01:00
baldurk
f32298a4d8
Remove unused values from SPIRVEditor
2019-08-16 17:38:34 +01:00
baldurk
e2b8085d78
Use generated helpers for SPIRVEditor
2019-08-16 17:38:34 +01:00
baldurk
9cc8ce6c3b
Add generated code based on SPIR-V json grammar
...
* This includes both our own enums and per-opcode helper structs for decoding
2019-08-16 17:38:34 +01:00
baldurk
e03f0c08e4
Add ConstIter for read-only SPIR-V processing
2019-08-16 16:12:01 +01:00
baldurk
3b00566ace
Move GLSL reflection tests to common place for SPIR-V to use
2019-08-16 16:12:01 +01:00
baldurk
98c8178c11
Don't ignore output arrays from geometry shaders
2019-08-16 16:12:01 +01:00
baldurk
45b4159648
Set invalid input attribute mappings to -1 in SPIR-V reflection
2019-08-16 16:12:01 +01:00
baldurk
0122448091
Sort cbuffer variables by offset when reflecting SPIR-V
...
* Struct member declarations don't have to be in offset order, so we need to re-
sort ourselves
2019-08-16 16:12:01 +01:00
baldurk
3ae359e3d0
Handle reflecting atomic counters in SPIR-V, for GL's SPIR-V
2019-08-16 16:12:01 +01:00
baldurk
ee590dc09c
For array input/outputs from geometry shader, don't reflect all elements
2019-08-16 16:12:01 +01:00