Commit Graph

10602 Commits

Author SHA1 Message Date
baldurk f57709366a Truncate resource names that are unreasonably long. Closes #1832 2020-04-21 17:09:33 +01:00
baldurk 75da714a85 Avoid asserts when copying buffers 2020-04-21 17:09:32 +01:00
baldurk 068f4998c7 Fix buffer viewer export to handle pagination. Closes #1837 2020-04-21 17:09:32 +01:00
baldurk 86c5c70a13 Fix packed format (uintten/unormten) use in the buffer viewer 2020-04-21 17:09:32 +01:00
baldurk a3dc3dde2b Use mesh property format when displaying secondary data in buffer view 2020-04-21 17:09:32 +01:00
baldurk 8ee6e43ed6 Check that we can render secondary mesh data with only two components
* We need to be sure that we don't accidentally read RGB anyway.
2020-04-21 17:09:24 +01:00
baldurk 6042c500bc Ensure we don't read out of bounds displaying meshes on vulkan
* The whole stride of a vertex binding must be in bounds for any attributes in
  it to be in bounds, so we adjust the attribute offset to put padding at the
  start of the strided segment wherever possible.
2020-04-21 12:22:42 +01:00
baldurk e216fa7e12 Print which physical device is used to create the device on replay 2020-04-20 16:52:12 +01:00
baldurk 0b8ab2f0e9 Fix Dref opcode fetching which should output scalar types 2020-04-20 16:51:58 +01:00
baldurk aeb750af42 Don't read D3D12_STREAM_OUTPUT_DESC::NumStrides if NumEntries is 0 2020-04-20 16:51:05 +01:00
baldurk 207852bb15 Disable linked shaderc as vulkan SDK copy now links /MTD
* We'll probably want to add support for optionally compiling in a linked
  shaderc that we build ourselves now.
2020-04-20 13:25:02 +01:00
baldurk 6aec92840f Integrate RGA 2.3.1 and add support for Navi 14 2020-04-20 13:24:28 +01:00
baldurk c572ad2ed8 Fix HLSL edit stub generation with system values 2020-04-20 12:00:37 +01:00
baldurk d15b0a3c3a Default initialise TextureSwizzle4 with RGBA swizzle 2020-04-20 11:14:03 +01:00
baldurk f2d69e9f9e Fix handling of ResourceMinLODClamp for cubemap textures on D3D12 2020-04-20 11:05:40 +01:00
baldurk 058f437974 Use the correct VarType when creating resource source mappings 2020-04-20 11:05:25 +01:00
baldurk f5b555dc1c Fix intel vulkan driver version decoding on windows 2020-04-20 10:53:13 +01:00
baldurk f3a413149a Fix TextureSwizzle conversion helper function 2020-04-17 18:30:56 +01:00
baldurk 91de355955 Add a helper to dump objects with dir() and bypass swig's repr 2020-04-17 17:32:57 +01:00
baldurk 2980742a3a Add wrapper struct TextureSwizzle4 to be more swig-friendly
* Swig doesn't like having fixed C arrays of enums, so wrap it in a struct to
  make it more clear.
2020-04-17 16:53:54 +01:00
baldurk 1ec3320e99 Don't bounds check instruction numbers against disassembly line count 2020-04-17 16:52:35 +01:00
baldurk 67edb36efc Make sure shader step always lands on a valid non-ignored instruction
* We want to always skip any ignored instructions (like OpLine etc) before
  returning a step, so that the next time we start a step it's always on a valid
  instruction.
2020-04-17 16:32:04 +01:00
baldurk e16bed7fa2 Fix wrong structure stride being used fetching hits in pixel debug 2020-04-17 16:31:15 +01:00
baldurk 83c7350e4a Implement remaining image sampling operations 2020-04-16 18:42:03 +01:00
baldurk 143f2bf054 Fix access to texel buffers 2020-04-16 18:41:59 +01:00
baldurk 7082f4eb44 Implement image dimension query opcodes 2020-04-16 18:41:59 +01:00
baldurk 9d5d9fa0bb Default to lod 0 if lod parameter is missing 2020-04-16 18:41:58 +01:00
baldurk 831ffbf226 Add different OpCopy* opcodes 2020-04-16 18:41:58 +01:00
baldurk f2cb1ddc53 Implement remaining bit twiddling operations 2020-04-16 18:41:58 +01:00
baldurk a725a4e278 Add support for extended int math functions (with borrow/carry/overflow) 2020-04-16 18:41:58 +01:00
baldurk 60258bd57b Implement private variable storage 2020-04-16 18:41:58 +01:00
baldurk 2556614eb5 We support 3 parameter math ops on the GPU 2020-04-16 18:41:58 +01:00
baldurk e34183d887 Add support for GLSL ops with struct/pointer outputs
* This is the functions that return multiple values - Modf/ModfStruct and
  Frexp/FrexpStruct
2020-04-16 18:41:58 +01:00
baldurk 6ebd752a9d Hold onto ShaderDebugState pointer inside ThreadState during SetDst
* This avoids needing to pass it down to all possible child functions that might
  need it.
2020-04-16 18:19:08 +01:00
baldurk 217a693487 Add support for misc math GLSL opcodes that don't have struct variants
* step, smoothstep
* ldexp
* fma
* faceforward, reflect
2020-04-16 18:19:08 +01:00
cperthuisoc 0df63aa8d0 Added system packages as hidden folders in the Executable Path dialog
android-only change
2020-04-16 18:18:52 +01:00
cperthuisoc 827c2c24f8 Fixed the launch of adb when using the Android SDK path on Windows 2020-04-16 18:18:40 +01:00
baldurk 1db2947c86 Drop constexpr to work around gcc 5 compiler bug 2020-04-15 21:29:19 +01:00
baldurk 1f23e28893 Enable gather operations for all texture dimensions 2020-04-15 20:33:58 +01:00
baldurk 137a613179 Support pushing operations with limited precision over to the GPU
* This is primarily transcendentals - sqrt, pow, sin/cos, etc. It also includes
  operations derived from those (like length/normalize/etc)
2020-04-15 20:33:57 +01:00
baldurk d889ba7513 Implement OpKill support 2020-04-15 20:33:57 +01:00
baldurk c91414782a Implement some easy to support extensions 2020-04-15 20:33:57 +01:00
baldurk def5476cf2 Add tests for NMin/NMax/NClamp 2020-04-15 20:33:57 +01:00
baldurk c4437f6be0 Add logical comparisons and any/all operators 2020-04-15 20:33:57 +01:00
baldurk 44f46b6ae9 Clamp buffer offset for mesh view input
* If the calculated offset is larger than the buffer size we should be sure to
  clamp it.
2020-04-15 20:33:57 +01:00
baldurk 62bb77a9b6 Initialise indirect parameter values to 0 2020-04-15 20:33:57 +01:00
baldurk d76e944799 Implement radians/degrees conversion functions 2020-04-15 20:33:57 +01:00
baldurk c3a5d99bc0 Add support for matrix operations (transpose/determinant/inverse) 2020-04-15 20:33:57 +01:00
baldurk 26f5b6a4b4 Implement more rounding-related GLSL extended instructions 2020-04-15 20:33:57 +01:00
baldurk 39ed21c12f Process lifetime of Id params to GLSL ExtInsts 2020-04-15 20:33:57 +01:00