Commit Graph

3694 Commits

Author SHA1 Message Date
baldurk b7431aec46 32-bit compile fix (downcast from UINT64 to size_t) 2016-08-06 23:21:02 +02:00
baldurk 5d25018874 Fix some appveyor variable shadowing warnings 2016-08-06 19:38:50 +02:00
baldurk 3dbd750846 Put more updater code inside the try { } catch(Exception)
* A crash was uploaded where File.Copy() failed due to permissions.
2016-08-06 19:23:30 +02:00
baldurk 989482923a Implement texture initial states 2016-08-06 18:31:54 +02:00
baldurk 1dad17ec7b Use the resource format from the texture, with type hint, creating SRV 2016-08-06 18:31:53 +02:00
baldurk 399fb28a80 Mark resource mapping functions as unimplemented so I don't forget 2016-08-06 18:31:52 +02:00
baldurk ee553addf9 Convert some TODOs into D3D12NOTIMPs 2016-08-06 18:31:51 +02:00
baldurk 77e9030e55 Support resource naming 2016-08-06 18:31:50 +02:00
baldurk cdde7606a8 Don't list replay-created textures in texture list 2016-08-06 18:31:50 +02:00
baldurk a94b6dafb9 Track bound descriptors and mark their contents are frame referenced 2016-08-06 18:31:49 +02:00
baldurk 992c2b56fb Don't do no-op barriers, it invalidates the command list 2016-08-06 18:31:48 +02:00
baldurk 910940bbae Add convenience overload of GetResIDFromAddr just returning the id 2016-08-06 18:31:45 +02:00
baldurk 7095c663a2 Track root signature and its contents for matching against root sets 2016-08-06 18:31:44 +02:00
baldurk 699dde6563 Serialise SetDescriptorHeaps and SetGraphicsRootDescriptorTable 2016-08-06 18:31:43 +02:00
baldurk d026705c50 Make sure struct is properly initialised 2016-08-06 18:31:41 +02:00
baldurk 09a73a1ac7 Parameters to macro were the wrong way around 2016-08-06 18:31:40 +02:00
baldurk 00cea7bbd5 Implement drawcall callbacks on D3D12 (untested - nothing uses them) 2016-08-06 18:31:39 +02:00
baldurk 6ca41cc681 Implement complex version of CopyDescriptors 2016-08-06 18:31:38 +02:00
baldurk 041018db69 Flush command lists so we don't leak one each present 2016-08-06 18:31:37 +02:00
baldurk ceeb1ece04 Align buffer offsets to 256 bytes 2016-08-06 18:31:36 +02:00
baldurk 42054c7814 Only create debug manager after internal allocator/lists are available 2016-08-06 18:31:35 +02:00
baldurk 9755ae2880 Don't crash but return NULL if GetNewList() can't allocate 2016-08-06 18:31:34 +02:00
baldurk 9f9610ce6d Recreate output windows after use, since D3D12 breaks them 2016-08-06 18:31:33 +02:00
baldurk 842d75a27c Implement font rendering on D3D12 with simple ring buffer (needs tidied) 2016-08-06 18:31:32 +02:00
baldurk b2c9ed0b4b Make sure not to reset newly created command lists - it's invalid 2016-08-06 18:31:31 +02:00
baldurk 46464dc403 Switch D3D11 font rendering to generate tri strip data in shader 2016-08-06 18:31:30 +02:00
baldurk 3a384e1113 Make sure to transition resources into PS read before texture display 2016-08-06 18:31:29 +02:00
baldurk dfc432d740 Clear up queue record after capture so we don't accumulate old chunks 2016-08-06 18:31:28 +02:00
baldurk 0b51f23441 Fix some missing refcount releases 2016-08-06 18:31:28 +02:00
baldurk 94e09f3905 Don't register initial contents as live resources, just wrap them 2016-08-06 18:31:27 +02:00
baldurk e29e3d2357 Add toggle (default on for now) to get debug layer in replay 2016-08-06 18:31:26 +02:00
baldurk d121567ddd Print debug messages while writing as well as while reading 2016-08-06 18:31:25 +02:00
baldurk 1a33324767 Protect some more debug prints with VERBOSE_PARTIAL_REPLAY define 2016-08-06 18:31:24 +02:00
baldurk c142164779 Remove redundant parameters (always the same) 2016-08-06 18:31:23 +02:00
baldurk 407bca01e8 Track renderstate as we go, and allow replaying single draws with it 2016-08-06 18:31:22 +02:00
baldurk 609126a909 Apply resource transitions as necessary 2016-08-06 18:31:21 +02:00
baldurk a828ba1c56 Filter out a really spammy and not useful debug message 2016-08-06 18:31:20 +02:00
baldurk 32ca05bb2b Factor out command record/partial replay into common place
* Both command lists and command queues need to be able to access this
  data so we expose it in a common place.
* This gets command stepping partially working.
2016-08-06 18:31:19 +02:00
baldurk 9e604294ea Don't signal non-live fences 2016-08-06 18:31:18 +02:00
baldurk 6e5f8ae687 When serialising GPU_VIRTUAL_ADDRESS, make sure to store offset as well 2016-08-06 18:31:07 +02:00
Baldur Karlsson 5110782474 Merge pull request #317 from Anteru/master
Disable the "always show vertical scroll" bar in the settings menu.
2016-08-05 15:45:21 +02:00
Matthäus G. Chajdas 1cb6890df9 Disable the "always show vertical scroll" bar in the settings menu.
The window is always big enough that the scroll bar remains disabled, so just get rid of it by default.
2016-08-05 15:39:51 +02:00
baldurk 59bc8254bd Fix potential crash if drawcall is null when showing empty ibuffer 2016-08-05 12:54:13 +02:00
baldurk 610b22f600 Fix a lot of high-contrast inconsistencies or brokenness. Refs #315
* In a couple of places I had to resort to if(IsHighContrast) but mostly
  this is just using system brushes consistently or not assuming black
  text.
* The default DockPanel theme doesn't work well, so make a minimal high-
  contrast theme for it and assign it everywhere.
* The pipeline flow was using fixed colours, use system brushes for the
  different elements and switch based on high-contrast to ensure active
  and inactive stages are visible (using ActiveCaption looks bad on
  normal themes because it's a big block of colour).
* For some reason the flat toolstrip renderer doesn't handle white-on-
  black themes, but the system one does. It's a little clunkier but it
  shows up correctly without writing tons of custom painting code.
* Range histogram uses a properly contrasting colour for the border.
* Treelist views use a better system colour for selected rows when
  inactive and hovered rows (when high contrast).
* Mesh view grids have a system background instead of white
* Various things (pipeline state, mesh viewe) set text colour when
  colourising backgrounds of things instead of assuming black.
2016-08-05 12:46:56 +02:00
baldurk 12e0c301af Handle themes with light text when picking contrasting colour. Refs #315 2016-08-05 11:19:56 +02:00
baldurk bf6a62c1b3 Fix incorrect casting of forward declared ID3D11Device. Refs #316
* After clang-format re-arranged headers, the definition of
  WrappedID3D11Device was no longer visible from d3d11_context.h, but
  instead just the pre-declared "class WrappedID3D11Device;"
* This meant the function didn't correctly upcast to the right parent
  type and left the return value with the wrong vtable which would crash
2016-08-05 09:39:26 +02:00
baldurk d6d36f6383 Add -Wno-unused-result to get Release builds compiling. Refs #274 2016-08-04 18:54:24 +02:00
baldurk bee280ea0a Fix a strict-aliasing warning. Refs #274 2016-08-04 18:54:24 +02:00
baldurk 733ed8db96 Enable -fstrict-aliasing always, since it enables in release. Refs #274 2016-08-04 18:54:24 +02:00
Baldur Karlsson 8b4a8307f9 Add vim to dependencies needed, for xxd. Refs #314 2016-08-04 12:05:33 +02:00