Commit Graph

13870 Commits

Author SHA1 Message Date
Jake Turner 3f72d8fe75 Support launching .app files without NSBundle
Downgrade the Error to a Warning and return the .app file path as the executable path
2023-05-06 11:56:44 +01:00
baldurk 279a827c73 Add a function to reset memory blocks without freeing them
* This can be used only when all resources are safely freed, but means the
  memory can be re-used.
2023-05-05 12:28:35 +01:00
baldurk 3e21a26f84 Delete frame capture chunks once capture has been written 2023-05-05 12:28:35 +01:00
baldurk 1a9f49776a Use placed resources and batched heaps for D3D12 initial contents 2023-05-05 12:28:35 +01:00
baldurk d891a31c90 Make android timeouts even more ludicrously generous 2023-05-05 12:28:35 +01:00
baldurk f413d4d084 Defer memory frees onto a thread 2023-05-05 12:28:35 +01:00
baldurk 6d765b1cc6 Batch padding bytes above 1k 2023-05-05 12:28:35 +01:00
baldurk ea5240be2e Try to handle processes on linux that fork without exec
* This is common since bash does it, so running a bash script will likely hit
  it.
2023-05-05 12:28:35 +01:00
baldurk eb3fa8dddd Use strerror over strerror_r which is not consistent 2023-05-05 12:28:35 +01:00
thisisjimmyfb 8f23e3c8f2 fix gles pixelhistory crash 2023-05-05 11:25:00 +01:00
baldurk 8b8067b224 Flush mapped non-coherent memory. Closes #2931 2023-05-04 18:08:48 +01:00
baldurk 8fe6c209f8 Fix infinite recursion on android getting environment variables
* We changed all uses of getenv to our Process::GetEnvironmentVariable in
  a1422df, but on android this causes an infinite recursion because its
  implementation of GetEnvironmentVariable uses LaunchProcess to query for the
  variable, which then tries to look up the PATH variable (which does not exist
  on android).
2023-05-04 17:28:01 +01:00
baldurk 9e93154383 Fix sphinx rtd theme for new sphinx version 2023-05-01 17:43:49 +01:00
baldurk b115a6750b Pass instance to GetInstanceProcAddr fetching vkCreateDevice 2023-05-01 16:28:42 +01:00
leo-paul.couturier eb643dd76f add windows.storage.dll to the list of ignored libraries 2023-04-27 10:51:39 +01:00
baldurk a1422df961 Force use of getenv/setenv directly from libc to avoid bash override
* Bash overrides getenv/setenv to look up its own variable set, but breaks since
  we need to modify the environment before main() when it initialises its
  variable set. Instead what happens is the first setenv initialises that
  variable in a blank set and so all subsequent environment variables are NULL.
  Then in main() the variable set gets initialised from environ, removing any
  changes that were made.
2023-04-26 14:01:54 +01:00
baldurk 9998714b50 Unwrap vulkan fences in present fence information struct 2023-04-26 13:09:30 +01:00
baldurk 0e55a9c0e5 Detect structures with all-NULL members, and display as NULL
* This is an implicit transformation that llvm makes normally at constant load
  time, we do it only for disassembly.
2023-04-25 17:14:57 +01:00
baldurk 644157be56 0 is not a forward reference in DXIL phi nodes 2023-04-25 17:14:57 +01:00
baldurk 527caea7a8 Handle pointer types being missing from DXIL shaders
* Pointer types implicitly referenced by objects but not directly (like global
  variable or alloc/gep pointers) are not guaranteed to be present, so we need
  to add them ourselves to parse correctly and identically to LLVM.
2023-04-25 17:14:57 +01:00
baldurk 12a963056e Fix wrong operand being used to look up resources in gather4 opcodes 2023-04-25 17:14:57 +01:00
Jake Turner e11130580a Update comments about RDMTL structs
Wrong name in comment:
MTLVertexBufferLayoutDescriptor is now MTLVertexDescriptor

Added comments for
FunctionGroup
MTLRenderPassDescriptor
2023-04-25 14:09:01 +01:00
Jake Turner 6dbb7a3a86 Serialisation for MTL::IndexType 2023-04-25 14:09:01 +01:00
Jake Turner bd545cb9b6 Remove unintentional use of nullptr 2023-04-25 14:09:01 +01:00
eclazi 3a03625651 Update comment 2023-04-25 14:07:38 +01:00
eclazi e140b6c68d Add path to DIA SDK dlls for VS 2022 installations 2023-04-25 14:07:38 +01:00
baldurk dfed2749c9 Fix detection of scalar packing from only matrix layout. Closes #2918 2023-04-25 13:42:17 +01:00
baldurk 894e20c470 Disallow querying for internal D3D interface. Closes #2923
* This interface does some undocumented things and then creates unwrapped
  resources, which can't be wrapped and hooked. Since the interface is not
  public it can't be wrapped safely, and must be blocked.
2023-04-25 11:36:24 +01:00
baldurk 3d5bbb216c Detect and separately report windows 11 2023-04-25 10:07:25 +01:00
Henry Rose ae718049f6 correct dynamic rendering stencilAttachmentFormat 2023-04-21 10:32:14 +01:00
baldurk ba81d81c3a Fix compile error 2023-04-20 13:56:01 +01:00
baldurk c520ad0e2b Fix formatting in ui file 2023-04-20 13:41:49 +01:00
baldurk 90950d9a84 Don't try to render 0x0 thumbnails 2023-04-20 11:24:26 +01:00
baldurk f129b5c745 Use access chain for looking up builtins from struct. Refs #2911 2023-04-20 11:12:25 +01:00
baldurk 86b575b0e5 Respect drawbuffers when they aren't simple direct 1:1 with attachments 2023-04-17 15:01:20 +01:00
baldurk 1792f9c9ab Ensure GL pixel history always replays all events even when skipping 2023-04-17 13:41:13 +01:00
baldurk 37a4c195f7 Fix some GL pixel history cases replaying missing draws 2023-04-17 13:41:13 +01:00
baldurk 73b05956b6 Make sure color mask is reset as needed in GL pixel history 2023-04-17 13:41:13 +01:00
baldurk 44e8c9ec20 Fix cases in GL pixel history where state is changed mid-replay
* Any places where we interrupt to do some work per draw need to restore the
  state properly afterwards.
2023-04-17 13:41:13 +01:00
baldurk c149b9f2ec If RestoreDeferredContextState was used a command list is not successful 2023-04-17 11:34:37 +01:00
baldurk 167c88ee41 Handle access chains for input data in vertex shader. Closes #2911 2023-04-17 10:18:27 +01:00
William Pearson afbe26768d Draw arrows next to all tool buttons with menus
Before, only MenuButtonPopup had an arrow. This makes it more obvious
as to whether the button will immediately do something when clicked or
if it will open a menu to choose a specific action.
2023-04-14 19:04:15 +01:00
William Pearson 4c45c07160 Move subControlRect for CC_ToolButton to RDTweakedNativeStyle
This means the full rect won't be returned for SC_ToolButtonMenu if it
is used in a context where the default style doesn't expect the menu.

This is a separate commit to isolate future changes to this function.
2023-04-14 19:04:15 +01:00
William Pearson f82ef87595 Enable tooltips for shader execute forwards/backwards menus
MakeExecuteAction already sets tooltips for each QAction it creates,
but these are not used in a QMenu unless the toolTipsVisible property
is set to true.
2023-04-14 19:04:15 +01:00
William Pearson d150d8f2b7 Use instant popup for shader execute forwards/backwards buttons
There is no action associated with clicking the button itself, only for
the menu associated with it. Using QToolButton::MenuButtonPopup means
that the majority of the button is for the button's own action, and
there is a small arrow next to the button that shows the menu. Since
there's no action, this means that the small menu arrow needs to be
clicked each time instead of the big button, which is annoying.
QToolButton::InstantPopup instead always shows the menu (though it
doesn't have the arrow indicating a menu exists, although this is not
particularly important).

InstantPopup is also already used for the "Insert" button used when
editing a custom shader for the texture viewer. MenuButtonPopup is used
in many other places throughout RenderDoc, but they are all save or
export buttons where there is a meaningful default action.
2023-04-14 19:04:15 +01:00
William Pearson 07a2fd4b1a Remove specification of QToolButton popupMode when there is no menu
Specifically, the open button in the Python shell window and the blue
channel (only) in the texture viewer had values specified even though
they do not have an actual menu associated with the buttons. For the
texture viewer, this was explicitly set to the default value (delayed
popup); for the Python shell window the value is custom. The popup
mode is only used "for tool buttons that has a menu set or contains
a list of actions".

These were added in early commits for each feature, probably by
accident: 0837e66939 for the texture
viewer and 2a4596e06a for the Python
shell.
2023-04-14 19:04:15 +01:00
baldurk 90ae874c1d Add fallback for shader feedback on Intel GPUs without int64 support
* We don't change very much, we use uvec2 instead of uint64 for passing the
  address in on KHR_BDA, and then do manual carry'd additions for address
  offsets.
2023-04-14 18:28:26 +01:00
baldurk cc3d383287 Manually check depth bounds test in vulkan pixel history 2023-04-14 16:08:10 +01:00
baldurk f9b133d153 Fix depth readback with custom depth image in vulkan pixel history 2023-04-14 16:08:10 +01:00
baldurk fb0b643c55 Mark non-final fragments as having unknown stencil in pixel history 2023-04-14 16:08:10 +01:00