Commit Graph

3405 Commits

Author SHA1 Message Date
baldurk e043ab6cd6 Serialise the 'this' pointer for command list chunks 2016-07-10 18:09:39 +02:00
baldurk 723c6e065e Minor ToStr fixes 2016-07-10 18:09:39 +02:00
baldurk f56d3e7779 Add text log every second until overlay is implemented 2016-07-10 18:09:38 +02:00
baldurk 4160f3a776 Wrap virtual address and descriptor handles, serialise as heap ID + idx
* This lets us track descriptor contents too.
2016-07-10 18:09:38 +02:00
baldurk 9f7dd21f1b Wrap remaining interfaces for HelloWorldD3D12.
* We can disable the wrapping checking etc, everything from now on
  should be correctly wrapped.
2016-07-10 18:09:37 +02:00
baldurk a0983b64a4 Serialise the command list/queue functions HelloWorldD3D12 uses 2016-07-10 18:09:37 +02:00
baldurk f3216b38f5 Tweak string name of ResourceId to be all one word for easier searching 2016-07-10 18:09:36 +02:00
baldurk 983e8f57c0 Include min/max depth in string format of D3D11_VIEWPORT 2016-07-10 18:09:36 +02:00
baldurk 34755927b9 Add a packed descriptor structure for storing into 2016-07-10 18:09:35 +02:00
baldurk 11823a306d Intercept, serialise and wrap pipeline state creation 2016-07-10 18:09:35 +02:00
baldurk 3a65091b3c Wrap and intercept command lists and queues, and add a couple of unwraps
* At this point the HelloD3D12 sample runs with RenderDoc injected, and
  renders properly.
2016-07-10 18:09:34 +02:00
baldurk f8fa72c305 Add safety code for now, to handle unwrapping non-wrapped resources 2016-07-10 18:09:34 +02:00
baldurk d656511d0f Don't register callback while still running global constructors 2016-07-10 18:09:33 +02:00
baldurk c1f4a01b1b D3D12 object passed to CreateSwapChain and friends is a command queue 2016-07-10 18:09:33 +02:00
baldurk 6ce0ea37dc Set up pass-through implementations for D3D12 device/command list 2016-07-10 18:09:32 +02:00
baldurk b387f8e7f1 Add file for non-wrapped command list/queue functions 2016-07-10 18:09:32 +02:00
baldurk d980da3b60 Rename file for wrapped functions 2016-07-10 18:09:32 +02:00
baldurk fae1212ea0 Add support for IAT hooking imports via ordinal. Needed for D3D12 2016-07-10 18:09:31 +02:00
baldurk 72006dbfcd Make sure to cast to the correct return type.
* Some of these already worked via the first inherited interface being
  the right one, but it's better to be safe. When writing to void* the
  right vtable must be sitting in place.
2016-07-10 18:09:31 +02:00
baldurk e2cec61cb0 Add skeleton wrappers for the remaining D3D12 interfaces 2016-07-10 18:09:30 +02:00
baldurk 3407d4744e Rename two D3D11 classes to avoid link collisions with D3D12 classes 2016-07-10 18:09:30 +02:00
baldurk 66524a7330 Move common code into DXGI out of D3D11, to share with D3D12 2016-07-10 18:09:29 +02:00
baldurk b505cfaceb Add initial skeleton of D3D12 support
* This includes changes to DXGI to remove hard dependency on D3D11 code
  and support multiple D3D versions initialising through DXGI.
* Basically all of the D3D12 interception is unimplemented/stubbed out
  and only the ID3D12Device interface is present.
2016-07-10 18:09:20 +02:00
baldurk 9a3c3961dd Remove unused debug lock 2016-07-09 20:39:00 +02:00
baldurk 990210feda Fix a clang-format issue that snuck through 2016-07-05 12:13:26 +02:00
baldurk 5bdde0c74f Travis: Re-enable clang-format checks with restored LLVM apt repo 2016-07-05 12:02:51 +02:00
baldurk c7f2391d10 Just in case, handle histogram or minmaxtile pipelines being missing 2016-07-04 13:01:41 +02:00
baldurk 7df7f5fa3c Skip drawcalls that have numInstances == 0 from PostVS 2016-07-04 13:01:29 +02:00
baldurk 3e171f7f79 Remove top-most windows, we shouldn't have any (just above-rest-of) 2016-07-04 10:59:11 +02:00
baldurk 92d2fe0db9 Add temporary glslang warning fixes 2016-06-28 19:10:04 +02:00
baldurk 2b80776d5c Add -Wno-unknown-warning-option for older clang versions 2016-06-28 19:09:38 +02:00
baldurk 9733f7772d Update glslang to upstream commit 5bc4d9a26ff9 2016-06-28 18:59:05 +02:00
baldurk 6854c5bf96 Deliberately leak logfile string storage, so it's always around 2016-06-28 18:23:41 +02:00
baldurk af27e0de3b Add warning suppression for clang too 2016-06-28 18:14:53 +02:00
baldurk 8b79a213b7 Posix vulkan should refer to libvulkan.so.1, not libvulkan.so 2016-06-28 18:14:46 +02:00
baldurk 296a4d170b Check for presence of extensions/layers, and platform surface extensions
* If one of the extensions or layers listed in the log isn't present on
  replay, we will just fail to load the capture. It's impossible to know
  whether or not it's safe to drop unsupported layers.
* Note that RenderDoc already suppresses reporting device extensions to
  the application if they're not supported by capture, which affects
  this.
* Also when adding platform surface extensions we check for availability
  and only add those present. We do require some minimum amount, but in
  future we'll need to report which windowing systems are supported to
  the UI layer so it can work appropriately using e.g. xcb or xlib.
2016-06-28 18:14:31 +02:00
baldurk 46daa01490 Implement OSUtility::DebuggerPresent on non-windows platforms 2016-06-28 18:04:43 +02:00
baldurk a16aa19610 Add new OS files to visual studio projects 2016-06-28 18:03:01 +02:00
baldurk bbc68b9248 Fix SPIR-V disassembly crash with matrix double index: matrixVar[x][y] 2016-06-28 14:16:33 +02:00
baldurk e8b3400ebb Fix crash if tex doesn't have any settings yet 2016-06-28 11:38:07 +02:00
baldurk 209986a0a0 Don't error, and don't dump data for DXBC custom class data. 2016-06-27 12:10:22 +02:00
baldurk edbd1ce89b Pass through view format as a type hint to texture display/sampling
* This is only applicable really on D3D11 where the underlying texture
  can be typeless, and a default interpretation as unorm/float won't
  necessarily how the texture is actually being used.
2016-06-27 12:10:21 +02:00
EecheE e160457abb Fixed null exception if Reset01 is clicked with no active texture. 2016-06-26 12:26:00 +02:00
EecheE c52e763e8c Changed default histogram range to [-1,+1] for snorm textures.
If viewing a SNORM texture, default histogram range is set to [-1,1]
instead of [0,1].
Added support for BC5U .dds fourcc code.
2016-06-25 17:14:41 -07:00
baldurk 259d60231f Fix delete being in the wrong place 2016-06-25 01:45:11 +02:00
baldurk 3f4ec852ba Pass through image layouts for vulkan and display in tooltips. Refs #199
* Semi experimental for now - I'm not convinced that having a tooltip
  for every image element is the best UI. It will need some iteration.
2016-06-24 17:54:41 +02:00
baldurk 307cee89fe Adjust columns in vulkan shader resource UI to make a bit more space 2016-06-24 16:55:24 +02:00
baldurk 377e07374b Add (semi-experimental) highlight & info for non-trivial resource views
* For D3D11 and Vulkan, any views which don't just map to the whole
  buffer or image will be highlighted in a colour, and when mousing over
  that row a small tooltip will be displayed with the view parameters
  that differ.
2016-06-24 16:32:32 +02:00
baldurk 27bbbc39a4 Pass through number of mips/layers in Vulkan image views 2016-06-24 16:31:04 +02:00
baldurk bf03ef4a8f Set defaults so non-array views etc have ArraySize = 1 2016-06-24 15:36:02 +02:00