Aras Pranckevicius
02fd7ac0cd
Refactor: is_exr_file checks memory buffer
...
All places that used is_exr_file already had first four bytes
of the file read into memory. So make is_exr_file work just
like is_dds_file does and check those bytes directly, no need
to hit stdio again.
2024-11-04 15:52:30 +00:00
Aras Pranckevicius
6a05176075
EXR: support mipmaps in exr image files
...
Tiled EXR files can have mipmaps levels. When they do,
and the odd size rounding mode matches what all the
graphics APIs do ("round down"), load them when loading
the exr file. Using the same machinery that the DDS
mipmap loading uses.
2024-11-04 15:52:30 +00:00
Aras Pranckevicius
8917bc5416
Refactor: rename dds_data -> tex_data
...
And move it out into a tex_data.h header. This is in preparation
for getting mipmaps out of EXR files, where read_dds_data for
that would be a bit confusing.
2024-11-04 15:52:30 +00:00
Jake Turner
3656641194
DXIL Disassembly use resource alias for resource handle in CBufferLoad
2024-10-31 18:26:14 +00:00
Jake Turner
fc109ce3ac
DXIL Debugger support for bindless resources
...
Change to find resource references by DXILDebug::Id
2024-10-31 18:26:14 +00:00
Jake Turner
3c0e64d97a
DXIL Disassembly Improve the Input signature display
...
Match DXBC reflection parameter using the Input register and element
2024-10-31 18:26:14 +00:00
Jake Turner
2799bbfb59
DXIL Debugger fix extract PS input shader compile errors
2024-10-31 18:26:14 +00:00
Jake Turner
bf6610a8cf
DXIL Debugger fix logic to detect bindless access
2024-10-31 18:26:14 +00:00
Jake Turner
281c34c922
DXIL Debugger Use DXIL Signature for the Inputs
...
Use the DXIL Signature input register and element linkage to extract the correct data from the initial values
2024-10-31 18:26:14 +00:00
Jake Turner
b9372b403f
Added DXIL::SetResultSSAId() and DXIL::FindSigParameter()
2024-10-31 18:26:14 +00:00
Aras Pranckevicius
154354f297
EXR: simplify pixel swizzling to RGBA
...
A tiny bit faster, and I think it is easier to understand too.
Time taken to load 4K video resolution EXR files, on Ryzen 5950X/VS2022:
- FP16 file (27MB): 77ms -> 75ms
- FP32 file (69MB): 118ms -> 113ms
2024-10-31 17:48:45 +00:00
Aras Pranckevicius
bb3b571c90
EXR: multi-threaded exr image loading
...
EXR files internally are split into independent "parts", which can
be decoded separately. Tinyexr already supports that via
TINYEXR_USE_THREAD.
Time taken to load 4K video resolution EXR files, on Ryzen 5950X/VS2022:
- FP16 file (27MB): 536ms -> 77ms
- FP32 file (69MB): 793ms -> 118ms
2024-10-31 17:48:45 +00:00
baldurk
b4403b2d8d
Test different whitespacing around pointers
2024-10-31 13:04:25 +00:00
baldurk
89ee55bd0c
Fix matching variable-less buffer formats
...
* It's convenient and we sometimes automatically create formats that are just
'xint' so make sure they parse correctly.
2024-10-31 12:57:12 +00:00
baldurk
ef1c633df3
Offset per-primitive data correctly when meshlet filtering
2024-10-31 12:47:18 +00:00
Aras Pranckevicius
0baf7b5f49
EXR: more standard RGBA channel name detection
...
Various EXR images especially from movie assets do not simply have "R"
etc as channel names; the convention seems to be to have "layer name",
".", "color channel name". For example, channels in EXR might be
"rgb.R", "rgb.G", "rgb.B", which RenderDoc was not detecting previously
and displaying an all-black image.
2024-10-31 11:58:30 +00:00
Aras Pranckevicius
2357c26651
EXR: support tiled images
2024-10-31 11:58:30 +00:00
Aras Pranckevicius
897d36ee03
Update tinyexr to current (1.0.9, from 2024 Jul)
...
Disable some warnings that happen on vs2015/2019
while building it, since whole build uses
warnings as errors.
2024-10-31 11:58:30 +00:00
Mario-Cui
6f95cf276d
allow d3d12 insert null rt descriptor.
2024-10-31 10:22:49 +00:00
baldurk
2dfd7e55b7
Disable buggy wegame layer
2024-10-30 10:33:41 +00:00
baldurk
1827548666
Fix EID miscounting around ExecuteIndirect partial replay
2024-10-30 10:33:41 +00:00
baldurk
6fbcbf757f
Use WriteToSubresource when required by non-linear CPU textures
2024-10-30 10:33:40 +00:00
baldurk
f4d579ffaa
Allow specifying tighter alignment than natural for odd buffer cases
2024-10-30 10:33:40 +00:00
Jake Turner
4a73100da6
D3D12 Shader Debug loop downwards from highest shader model to 6.0
...
CheckFeatureSupport will return E_INVALIDARG if HighestShaderModel isn't known by the current runtime.
2024-10-29 08:35:00 +00:00
baldurk
21db7b5f8a
Minor-hack around applications that resize MS textures with non-storage
...
* We can safely use the non-DSA function since this always happens in the
texture chunk, not during capture (we do not support mid-capture texture
resizes for obvious reasons).
2024-10-28 13:59:18 +00:00
baldurk
32d8c6d79d
Don't query sampler parameters for MSAA textures on GL
2024-10-28 13:58:22 +00:00
baldurk
db6e93665f
Make it very clear if someone deletes a required section from template
2024-10-28 10:37:54 +00:00
Cam Mannett
cf76de368c
Make RT AS commands 'actions'
2024-10-28 10:37:39 +00:00
Jake Turner
e7975ca9f7
DXIL Debugger SampleGrad ddx/y inputs are length three not four
...
Fixes assert when executing SampleGrad
2024-10-27 12:27:06 +00:00
Jake Turner
9f020467ff
DXIL Debugger fix mistake when creating ddy_coarse input derivatives
2024-10-27 12:25:30 +00:00
Jake Turner
3129d1dd88
Shader Debug HLSL shader remove the SM6.8 branch
2024-10-27 11:17:48 +00:00
Jake Turner
0b5527d52b
D3D12 Shader Cache force use of DXC internal validator
...
Prevents DXC loading dxil.dll
2024-10-26 16:46:32 +01:00
Jake Turner
c5e9f4acc9
DXIL Debugger use the correct sampler for GPU Sample operations
2024-10-25 17:18:47 +01:00
Jake Turner
9b7c3daa8d
DXIL Debugger handle DW_TAG_const_type in AddDebugType()
2024-10-25 17:18:47 +01:00
Jake Turner
392b729fa7
DXIL Debugger support for DXOp::Barrier
...
treated as nop because only one thread running
2024-10-25 17:18:47 +01:00
Jake Turner
d25c3a226e
DXIL Debugger : basic support for global shared memory
...
Unified stack allocks with global memory allocations
Add global memory to the source variables
2024-10-25 17:18:47 +01:00
Shahbaz Youssefi
5219965684
Skip Pixel History's PrimID pipeline without geometry shaders
2024-10-25 17:16:43 +01:00
baldurk
8a6c3a73f7
Handle garbage descriptor set in vkCmdPushDescriptorSetKHR. Closes #3461
2024-10-25 10:37:38 +01:00
baldurk
0d98343eca
Check for geometry feature with prim ID shader
2024-10-25 10:20:16 +01:00
baldurk
b1dbfb7aa2
Don't trust D3D12 Unmap ranges
2024-10-25 10:18:07 +01:00
baldurk
50888a0e58
Handle ray EIs in action callbacks
2024-10-25 10:18:07 +01:00
baldurk
56514926c5
Fix calculation of offset/sizes when copying build inputs
2024-10-25 10:18:00 +01:00
Jake Turner
562d6339b7
DXIL Debugger support for DXOp::IMul, DXOp::UMul, DXOp::UDiv
2024-10-24 16:27:42 +01:00
Jake Turner
92727ee0d0
DXIL Debugger support for DXOp::Bfrev, DXOp::Countbits
2024-10-24 16:27:42 +01:00
Jake Turner
f933aa1c76
Moved some bit field helper functions to common code
...
To be shared between DXBC and DXIL Debugger
BitwiseReverseLSB16
PopCount
2024-10-24 16:25:34 +01:00
Jake Turner
84c7906a7a
DXIL Debugger support for DXOps: IsNan, IsInf, IsFinite, IsNormal
2024-10-24 16:24:41 +01:00
Jake Turner
0e4f8e2e09
DXIL Debugger flesh out DXOp::Round* support
2024-10-24 14:20:00 +01:00
Jake Turner
d3fdc3c18f
DXIL Debugger flesh out DXOp::Frc support
2024-10-24 14:19:33 +01:00
Jake Turner
369520d319
DXIL Debugger fixed incorrect runtime asserts
2024-10-24 12:54:16 +01:00
Jake Turner
f538e91b05
DXIL Debugger extended support for GPU Sampling instructions
...
DXOp::Sample
DXOp::SampleBias
DXOp::SampleLevel
DXOp::SampleGrad
DXOp::SampleCmp
DXOp::SampleCmpBias
DXOp::SampleCmpLevel
DXOp::SampleCmpGrad
DXOp::SampleCmpLevelZero
DXOp::TextureGather
DXOp::TextureGatherCmp
2024-10-24 12:54:10 +01:00