baldurk
8024c8c342
Store and serialise resources in D3D12 descriptors by id directly
...
* The problem with storing resource pointers in descriptors is that it can be
invalidated without detection - a kind of A-B-A problem - if the resource is
deleted and then another resource is allocated with the same pointer.
* Descriptor creation in D3D12 is extremely complex and there are many ways a
resource could become incompatible with the descriptor metadata struct.
Detecting all possible ways a new resource could be incompatible is not
feasible.
* As a solution, we store the ResourceId which we know is immutable, serialise
via the pointer, and keep the live ResourceId on replay. If the resource was
deleted, the serialisation will fail because we look up the pointer at the
point of serialise, and a deleted resource will end up being NULL.
* To try and abstract this away and avoid potential confusion with the
ResourceIds, we make the descriptor contents private and provide accessors.
2018-06-18 15:20:08 +01:00
baldurk
11091f1e54
Tidy up python documentation and add examples
2018-06-15 19:44:37 +01:00
baldurk
45c3c27923
Rename DrawFlags::UseIBuffer to DrawFlags::Indexed
2018-06-15 19:40:54 +01:00
baldurk
4561b55464
Persist a default browse directory for file dialogs, if none is provided
...
* This provides a slightly more sensible default than the application working
directory.
* The default is shared across all dialogs and open/save.
2018-06-15 19:40:54 +01:00
baldurk
efd11bb7f2
Don't crash if OMSetRTVs is called with no RTVs and single handle flag
2018-06-15 10:34:05 +01:00
baldurk
c737ecebba
Fix mesh output with multiview - always output view 0
2018-06-15 10:10:22 +01:00
baldurk
093e8a6b40
Support NewFloatingArea and LastUsedArea properly in AddDockWindow
2018-06-14 17:57:31 +01:00
baldurk
68bd58a308
Fix typo in python docstring
2018-06-14 17:56:26 +01:00
baldurk
bf70aeb64d
Handle None being passed from Python for a QWidget pointer
2018-06-14 17:56:18 +01:00
baldurk
4b11dce193
Fix linux compilation
2018-06-13 20:54:30 +01:00
baldurk
b36b1fa453
Change remote server version to be == RenderDoc version
...
* Any time the replay types serialisation change, the remote server becomes
incompatible. We're not going to add backwards compatibility to that system,
so we need to break it every time.
* Really the version should be bumped any time renderdoc_serialise.inl changes,
but we don't have an auto-incrementing revision to use.
2018-06-13 17:40:02 +01:00
baldurk
ae5323bccc
Remove mention of single-queue limitation from docs
2018-06-13 17:18:00 +01:00
baldurk
0ee6406a34
Don't cull while rendering meshes on GL
2018-06-13 16:58:54 +01:00
baldurk
d4b4355b89
Don't create aliasing fake physical devices
2018-06-13 16:16:07 +01:00
baldurk
add4b44283
Fix some cases missing multiqueue handling
2018-06-13 16:15:52 +01:00
baldurk
47f3f64fc7
Rename Samples Written to Samples Passed
...
* This measure the number of samples that pass the depth/stencil tests -
In the case of early tests, this means it doesn't account for shader discard before writing.
2018-06-13 13:22:11 +01:00
baldurk
0a965045f7
Add support for extension VK_KHR_get_surface_capabilities2
2018-06-13 13:11:52 +01:00
baldurk
d79514f926
Don't process DX12 maps that have an invalid/empty written range
2018-06-13 09:17:04 +01:00
baldurk
abd67a7702
Add some DX12 performance optimisations
...
* Switches some contended mutexes for R/W locks
2018-06-13 09:17:03 +01:00
baldurk
de969105d4
Add R/W lock to OS-specific wrapper
2018-06-13 09:17:03 +01:00
baldurk
ea3e2c8610
Add multiqueue support for Vulkan. Closes #373
2018-06-13 09:17:03 +01:00
baldurk
2c8674790c
Add spacers in pipeline view for if all groups are collapsed
2018-06-13 09:17:03 +01:00
baldurk
d9bab79dbc
Allow clicking on labels of collapse group boxes to toggle
2018-06-13 09:17:03 +01:00
tuxerr
9b33a73631
bugfixes and gl driver removal of context data record on delete
2018-06-11 19:18:02 +01:00
tuxerr
cc9d50cf2e
moving per-thread records to the TLS-context
2018-06-11 19:18:02 +01:00
Remi Palandri
891b1f61ef
add multi context support for GL, and VR support to select only one
2018-06-11 19:18:02 +01:00
baldurk
3fd0707641
Check for KHR_debug and ensure ClientMemoryIBO is fully created
2018-06-07 19:27:57 +01:00
baldurk
6ceccb678b
Fix race in vulkan code if QueueSubmit overlaps start/end capture
2018-06-07 18:20:42 +01:00
baldurk
9b25f3948e
Fix copy-paste error of shader output values in wrong places in history
2018-06-07 16:08:28 +01:00
baldurk
6e06e6f338
Mark RTVs as used when they are allocated
2018-06-07 14:49:32 +01:00
baldurk
3ffbaac987
Account for stream-out counter when calculating output size
2018-06-07 14:49:20 +01:00
baldurk
72b40769b5
Add support for D3D12 up to D3D12.3. Closes #966
2018-06-07 14:49:07 +01:00
baldurk
4de23d8d8b
Fetch enough data even for odd vertex attribute offsets. Closes #1007
2018-06-05 21:08:06 +01:00
baldurk
0e826a9263
Pass -n when launching android activity to process arguments. Refs #987
2018-06-05 21:08:06 +01:00
baldurk
09f0c537bd
Give client-memory buffers obvious names
2018-06-05 21:08:06 +01:00
baldurk
892bc28772
To be backwards compatible with older captures, create global fake VAO 0
2018-06-05 21:08:06 +01:00
baldurk
0c47ee322b
Expand backwards compatibility check for fake FBO 0
2018-06-05 21:08:06 +01:00
baldurk
c2c0433999
Fix logic/blend enabled being wrong way around on D3D12 too
2018-06-05 21:08:06 +01:00
baldurk
21b7c0265a
Account for an array as the last element of an SSBO struct, when padding
2018-06-05 21:08:06 +01:00
baldurk
c36b4e1ef6
Attempt to fix missing diagnostic logs in crash reports
2018-06-05 21:08:06 +01:00
Amit Prakash
d838109f25
Add to enable VK_AMD_gpa_interface extension
2018-06-05 15:26:54 +01:00
baldurk
fe8cbfcc8c
Handle different actual indices vs. displayed indices exporting VS Out
...
* For VS Out data the actual offsets may be different than displayed, so we
calculate manually rather than querying the model for each index.
2018-06-04 20:12:27 +01:00
baldurk
66d915d68b
Don't crash if GS/TES shader reflection failed to fetch
2018-06-04 20:11:39 +01:00
baldurk
1f18b2ef4e
Support NULL pRootSignature when creating pipelines. Closes #997
...
* Seemingly if NULL, the embedded blob is used in the shaders (which must be
present in at least one shader, and must match exactly if present in multiple
shaders).
2018-06-04 19:23:26 +01:00
Józef Kucia
a38498b32f
Export unsupported GL functions on Linux.
...
This fixes apps which load legacy GL functions using dlsym(). Some apps
load legacy GL functions unconditionally, even if they have no intention
of calling them.
2018-06-04 10:15:11 +01:00
Józef Kucia
4d8e14f73b
Use proper names for unsupported GL functions.
2018-06-04 10:15:11 +01:00
Hans-Kristian Arntzen
ac3efb681e
Make As*() functions const-correct.
2018-06-04 10:14:29 +01:00
Jake Turner
e8c5cc7628
Fix -Wunused-lambda-capture warning errors on xocde93
2018-06-01 09:07:58 +01:00
Remi Palandri
dc920abf39
add vrapi_submitframe hook back and disable vr markers if it's used
2018-05-31 09:44:48 +01:00
Remi Palandri
6768cd96ee
code formatting for the glDebugInsert commit
2018-05-31 09:44:48 +01:00