baldurk
5864c11fa2
Add support for D3D11.3 and D3D11.4 (minor). Refs #235 . Refs #145
...
* Only one major piece of functionality is unimplemented and stubbed out
- WriteToSubresource and ReadFromSubresource in concert with passing
a NULL D3D11_MAPPED_SUBRESOURCE parameter to ID3D11DeviceContext::Map.
2016-06-21 21:08:26 +02:00
baldurk
6403b5a6d6
Use full pathnames for files, so we don't have duplicate keys in dict
2016-06-21 13:35:21 +02:00
baldurk
7884b0e825
Add HTML pipeline export for GL, and minor tweaks on Vulkan/D3D11
2016-06-09 17:37:16 -07:00
baldurk
ed018f23e8
Add shader edit & replace for vulkan (without source for now)
...
* Currently at least glslang doesn't emit OpSource with source data
embedded, so we don't pull it out and for the moment we just pre-fill
the shader editor with the disassembly text (which is sort of but not
really GLSL) as a better-than-nothing default.
2016-06-09 15:30:31 -07:00
baldurk
d41c9538de
Add support for SPIR-V specialization constants
2016-06-07 11:35:44 -07:00
baldurk
56c8fbc595
Handle purely typed texel buffers with no members
2016-06-01 16:48:22 +02:00
baldurk
6c39971374
Add proper support for immutable samplers. Refs #260
2016-06-01 16:39:18 +02:00
baldurk
054a01c3b0
Check for drawcall potentially being NULL
2016-06-01 11:57:55 +02:00
baldurk
1914a8a029
For APIs with proper separate sampler objects use debug names. Refs #273
2016-05-26 23:51:09 +02:00
baldurk
3d69ece39a
Display custom glObjectLabel for shaders, programs and pipeline
2016-04-27 23:18:56 +02:00
baldurk
5867d7ada1
Pass through resource view element size in D3D11 pipeline state
...
* This lets us calculate the offset and visible length when opening a
buffer view from a resource binding.
2016-04-23 13:03:41 +02:00
baldurk
0ed364bf77
Protect against crash if copy-pasting with no tree nodes selected
2016-04-17 18:00:21 +02:00
baldurk
14781e4287
Handle invalid vulkan vertex input setup, and display better in pipeview
2016-04-17 17:50:45 +02:00
baldurk
171fbcfabd
Fix crashes when loading 'image' logs
2016-04-14 21:05:40 +02:00
baldurk
70b99a4412
Remove antiquated 'multiple frames in one capture' support.
...
* Cleans up the code a bunch, this support is unlikely to ever return
and if it does it will need a rethink anyway.
2016-04-13 00:28:09 +02:00
baldurk
d62ce264b6
Display custom names for input layouts
2016-04-12 22:46:25 +02:00
baldurk
e24f93970d
Add empty marked rows for descriptor sets required by shader but unbound
2016-04-11 20:57:24 +02:00
baldurk
009bfb2c74
Where possible apply offs/len knowledge when viewing buffers. Refs #224
2016-04-02 15:39:27 +02:00
baldurk
74c1d16b2b
Index FB attachments properly with renderpass indices. Refs #200
2016-03-01 19:44:10 +01:00
baldurk
1a05f4fc4a
Forcibly refresh UI state after editing a shader or removing an edit
2016-02-21 16:10:46 +01:00
baldurk
2a4f5c5ac8
Reduce minsize on panels in vulkan pipeline state viewer
2016-02-07 18:52:06 +01:00
baldurk
420f1e7000
Fix display of push constants in the UI
2016-02-07 18:52:05 +01:00
baldurk
f2090b40a7
Rename constant buffers to uniform buffers on VK pipeline display
2016-02-07 18:51:59 +01:00
baldurk
2e0ffa7813
Batch update copyright years everywhere
2016-02-07 18:50:45 +01:00
baldurk
e22d62dabd
Add formatting of complex buffers when opening viewer
2016-02-07 18:50:12 +01:00
baldurk
d98a9ef4ae
SPIR-V should fill out read only and read write resources separately
2016-02-07 18:50:10 +01:00
baldurk
85858da14d
Use the right slot number for opening constant buffers
2016-02-07 18:50:09 +01:00
baldurk
8e089a8768
Mark dispatches as drawcalls and fixes for CS pipeline state
2016-02-07 18:50:08 +01:00
baldurk
599a378d9c
Display descriptors by iterating the sets and looking up reflection
...
* This lets disabled/empty sets be displayed more correctly
2016-02-07 18:49:31 +01:00
baldurk
f63dfcfc1f
depthclip != depthclamp
2016-02-07 18:48:38 +01:00
baldurk
795fbcaf8d
Fix some misc bugs
2016-02-07 18:48:35 +01:00
baldurk
521ec84b8b
Add pipeline export to HTML for vulkan
2016-02-07 18:48:08 +01:00
baldurk
b4ebc13c9d
Support push constants display in UI
2016-02-07 18:46:59 +01:00
baldurk
5c309d9d34
Refactor handling of resources/binding to be much more flexible
...
* This will handle the new vulkan binding model with multiple descriptor
sets and arrays of objects in each binding. It also makes a few tidy
ups and improvements to other APIs in presentation - will e.g. now
show thumbnails for vertex and other stages.
2016-02-07 18:46:40 +01:00
baldurk
6051f0c500
Split 'Resources' shader array into readonly/readwrite arrays
...
* This is preparation for a following commit, might not work on its own
(mostly untested - just compiling).
2016-02-07 18:46:39 +01:00
baldurk
e51cf27321
Get abbreviations from common pipeline state (as they're API specific)
...
* Also the PipelineStateViewer will set its current 'sticky' API type
to the common pipeline state, so that when a log isn't loaded we can
still get API-specific properties that match the last API used.
2016-02-07 18:46:38 +01:00
baldurk
534f9943f9
Handle arrays of shader resources in pipeline state
2016-02-07 18:46:36 +01:00
baldurk
8a6d2ebf30
Handle arrays of uniform buffers in descriptor slots
2016-02-07 18:46:35 +01:00
baldurk
7dd5760420
Try to handle unbound resources a bit better
2016-02-07 18:46:31 +01:00
baldurk
1503e7f881
Add mousemove/mouseleave handlers for non-PS resources
2016-02-07 18:46:30 +01:00
baldurk
e6807ec3a7
Proper display for descriptor sets in pipeline state view
2016-02-07 18:46:29 +01:00
baldurk
af8addf20e
Display if blend is enabled properly
2016-02-07 18:45:18 +01:00
baldurk
b363dc1fb5
Vulkan scissor regions are x,y,width,height
2016-02-07 18:45:16 +01:00
baldurk
484d70ddbd
Display buffers properly in resource list
2016-02-07 18:45:13 +01:00
baldurk
b569932a71
Update pipeline stage names to Vulkan nomenclature
2016-02-07 18:45:05 +01:00
baldurk
70b1d241b0
Finish the vulkan pipeline display
2016-02-07 18:43:49 +01:00
baldurk
b28428cdf1
Don't try and index into a descriptor set or binding that doesn't exist
...
* This can happen with unused binds - I think it's valid for a bind in a
shader to index outside of the descriptor set as long as it's never
used.
2016-02-07 18:43:15 +01:00
baldurk
ee1460dcaa
Update C# vulkan pipeline state structs to match
2016-02-07 18:43:00 +01:00
baldurk
f660bdd807
For now, blat resources out into a list by string
...
* This will do until I figure out how to layout the pipeline viewer
for resources.
2016-02-07 18:42:08 +01:00
baldurk
a25d07cf59
Display cbuffer contents within vulkan pipe viewer
...
* For now, we just assume that cbuffers are tightly packed according to
D3D11 rules (matrices, structs, float3/4 are all float4 aligned), and
once final SPIR-V is generated everything should have explicit
offsets, strides, and sizes
2016-02-07 18:42:06 +01:00