Commit Graph

14786 Commits

Author SHA1 Message Date
baldurk d12f5fb5a8 Stop clamping available tier 2024-06-13 14:38:47 +01:00
baldurk c7c9d79ceb Add indirect patching of shader records for indirect ray dispatch
* We use a worst-case estimate of how much scratch buffer space will be needed
  as there's no way to know beforehand on the CPU.
2024-06-13 13:33:06 +01:00
baldurk 652033dbc9 Process ray dispatches in indirect argument lists 2024-06-13 13:33:06 +01:00
baldurk e03c17d079 Refactor ray dispatch patching
* This makes the shader more amenable to running indirectly for indirect
  patching
2024-06-13 13:33:06 +01:00
baldurk 62b2e2226d Commit modified version of intellij-community stubgen & wrapper script 2024-06-13 13:32:58 +01:00
baldurk 4ef1ee5bcc Remove unnecessary and problematic allocator singleton 2024-06-13 13:32:55 +01:00
Louis de Carufel 71ac13e9bf Bookmarks are now listed in menu. 2024-06-13 10:27:41 +01:00
Jasmine Hansen b2644b7f5f Add support for most render overlays with shader objects
Excludes quad overdraw and tri-size
2024-06-12 19:00:15 +01:00
Jake Turner b7b5ec0c14 Remove device scaling factor from margins in the UI
Makes ShaderViewer, Capture Comments and Python Shell margins look correct for non-unit system scaling
2024-06-12 16:37:02 +01:00
Jake Turner a711d219d1 Serialise ShaderDebugInfo::entrySourceName Closes #3353
Required to get the correct entry point when working with remote captures
2024-06-12 15:22:56 +01:00
Jake Turner d031ec4195 Set baseResourceMem for buffer and image resources Closes #3346 2024-06-11 12:05:27 +01:00
Jake Turner 141354a2a4 Extended VK_KHR_Buffer_Address test to cover #3346
One extra draw from GPU memory which doesn't change and is unmapped during the draw loop
2024-06-11 12:05:27 +01:00
Kanglai Qian 27867cc456 extend StoreCompressedTexData for update & subupdate 2024-06-11 11:02:29 +01:00
Joshua Ashton 1a90eed007 Fix segfault with EXT_acquire_drm_display
This needs to be added to HookInitVulkanInstanceExts, like the other KHR_display functions.

Fixes a segfault when Renderdoc'ing SteamVR.

Signed-off-by: Joshua Ashton <joshua@froggi.es>
2024-06-11 10:35:13 +01:00
Jake Turner e99e18e0d6 DXIL Disassembly always show the Buffer index for Store operations
i.e.

bufOut[0] = {_18};
*(&bufOut[0] + 8 bytes) = {_35};
2024-06-07 13:25:58 +01:00
baldurk 9741bacc7b Fix wrong number of shader stages in fixed array 2024-06-07 10:40:41 +01:00
baldurk 9aa57e5aaa Handle root signatures not being specified on pipeline create
* If the root signature is embedded in a shader somewhere we need to pull it out
  for access.
2024-06-06 15:49:06 +01:00
baldurk 80f49ea8e4 On D3D11 destroy swapchain-related resources immediately. Closes #3343
* During capture if ResizeBuffers is called we can't defer destruction to the
  end of the capture as it will cause the function to fail due to refcounting
  rules.
2024-06-06 14:55:25 +01:00
baldurk 1bdffb18a6 Fix access to incorrect GPU address tracker 2024-06-06 14:55:24 +01:00
Jake Turner d6c94b20bc DXIL Debugger preparation changes
Add DXILDebug::[Debugger,ThreadState] as friends to DXIL::Program
Expose DXIL::isUndef(const DXIL::Value* v); for use in the DXIL Debugger
Add more stubs to DXILDebug::[DebugAPIWrapper, ThreadState, GlobalState]
2024-06-06 12:15:03 +01:00
Jake Turner 5d4d3e0c0d Fix incorrect parameter argument to DXIL::Program::ArgToString 2024-06-06 12:09:29 +01:00
Jake Turner 6749ad1770 Remove static DXIL::dxcStyleFormatting and DXIL::dxilIdentifier
Pass in bool dxcStyleFormatting parameter to helper functions
Derive dxilIdentifier from dxcStyleFormatting i.e. '%' or '_'
DXIL Debugger and RD Disassembly specific helper methods choose to use "dxcStyleFormatting = false"
2024-06-05 15:09:01 +01:00
baldurk ad35a251b0 Add PR/Push specific commit message handling in CI
* The previous ignoring of the top commit was to avoid badly-written merge
  commits added by github, we want to continue doing that for PRs but check all
  commits on push as a safety measure.
2024-06-05 13:47:18 +01:00
baldurk 1b81c02919 Add GLES clip control extension equivalence. Refs #3336 2024-06-05 13:11:44 +01:00
Jake Turner e64bf288b0 Tweak Mac CI workflow to fix github CI warnings 2024-06-04 13:32:02 +01:00
baldurk 6134e05525 Update checkout actions on CI 2024-06-04 11:10:21 +01:00
baldurk 9b62337a13 Compile fixes 2024-06-04 10:40:00 +01:00
baldurk a7e9a60280 When patching mesh shaders only consider globals for its entry point
* For shaders with multiple entry points we can't process outputs for other
  entry points that may not be arrayed.
2024-06-04 10:08:08 +01:00
baldurk af67b951de Ensure descriptor sizes are properly initialised in default pipe state 2024-06-04 10:08:08 +01:00
baldurk aecaa7e208 Calculate texture byte sizes as 64-bit on GL and Vulkan. Closes #3338 2024-06-04 10:08:08 +01:00
baldurk 44f9f24ace Add correct support for GL_EXT_clip_control on GLES. Closes #3336 2024-06-04 10:08:08 +01:00
Jake Turner 70d93f14db DXIL Disassembly small tweaks
Change some RDCASSERT(a == b); to RDCASSERTEQUAL(a,b); now that the stringise exists for the data types
2024-06-03 17:31:08 +01:00
Jake Turner f4e361eba8 Fix spelling mistake "preceeded" in DXIL Disassembly output 2024-06-03 13:55:38 +01:00
Jake Turner dcaba505cd DXIL Disassembly Refactoring to use GetArgId instead of ArgToString 2024-06-03 13:48:12 +01:00
Jake Turner 38340e3cb1 DXIL Debugger foundation refactoring
Removed "rdcstr Program::GetResourceReferenceName(ResourceClass resClass, const BindingSlot &slot) const"
Moved "DXIL::BindingSlot" to "DXILDebug::BindingSlot"
2024-06-03 13:06:54 +01:00
Jake Turner ccde0a261f DXIL Disassembly use switch...case for handling DXOp Opcodes
Simplifies code compared to the previous if...else if's
2024-06-03 13:01:09 +01:00
Jake Turner ce3477d7ab Added stringise for DXIL::Type::TypeKind 2024-06-03 12:48:13 +01:00
Jake Turner 133a1d6a40 Added DXIL::Program helper methods
static void MakeResultId(const Instruction &inst, rdcstr &resultId);
Id GetArgId(const Instruction &inst, uint32_t arg) const;

Used const reference on ResourceReference constructor
2024-06-03 12:39:44 +01:00
Jake Turner c731589bd0 Added DXIL support to DXBCContainer::FillTraceLineInfo
The DXBC container adds output to the disassembly view, need to include that output when computing the per instruction lineInfo "disassemblyLine" value

Removed "void Program::ProcessFunctions(std::function<bool(const Function *)> callback) const;"
2024-06-03 12:32:21 +01:00
Jake Turner 701220cc63 RD DXIL Disassembly fix getival to work with Literal
Inlined getival to get around template instantiation outside of the compilation unit
2024-06-03 12:26:09 +01:00
Jake Turner a6b018b44b Added size_t DXIL::Program:::GetInstructionCount() const; 2024-06-03 12:24:32 +01:00
Jake Turner 8c23b861d8 Change DXBC::BasicDemangle() to pass by reference instead of value 2024-06-03 12:21:57 +01:00
Jake Turner ebbea348bc Added dxil_stringise.cpp
Moved DoStringise() methods from dxil_reflect.cpp and dxil_disassemble.cpp to dxil_stringise.cpp
2024-06-03 12:12:44 +01:00
Jasmine Hansen 71b8a7d600 Update postvs and overlay helpers for shader object 2024-06-03 09:58:41 +01:00
baldurk 205b627dd4 Bump version to v1.34 2024-05-31 20:23:54 +01:00
baldurk cae2893238 Fix CI checking commit messages not checking latest
* Also ignore (temporarily?) a commit that fails the check
v1.33
2024-05-31 18:39:06 +01:00
baldurk 341f9a689b Fix shader viewer bookmarks to work with editing and viewing shaders
* Previously it was only applied for debugging shaders.
2024-05-31 15:26:07 +01:00
baldurk 56976ff4a5 Make missing postvs outputs non-fatal 2024-05-31 15:25:47 +01:00
Jake Turner 76f917621b Ignore static bindings which are not present in the descriptor set layout 2024-05-31 11:38:33 +01:00
Jake Turner 171278bfca For descriptor copies don't try to mark the AS as frame referenced 2024-05-31 11:13:40 +01:00