Commit Graph

188 Commits

Author SHA1 Message Date
baldurk 7e10c5c4ea Pass through ShaderResourceType per-texture for better type naming 2015-01-17 15:03:34 +00:00
baldurk 51a0ee1dc1 Fix typo! 2015-01-16 22:54:03 +00:00
baldurk 75e3a54d32 Update visible copyrights (non-code) to 2015 2015-01-16 22:14:06 +00:00
baldurk e13f4b61d4 Crash fix for if the GL pipeline state is empty (e.g. a D3D11 log) 2015-01-16 14:02:14 +00:00
baldurk 035eecfb1e Show if GL_FRAMEBUFFER_SRGB is 0 for an SRGB FBO attachment 2015-01-16 11:34:35 +00:00
baldurk 7168a1b69c Clear primitive restart index text 2015-01-16 02:50:10 +00:00
baldurk b059e601c5 Send sampler information through to GL pipeline state for display 2015-01-16 02:49:00 +00:00
baldurk cceddc9b19 Tidy up constant buffer table per-shader in GL pipeline state view 2015-01-16 02:03:55 +00:00
baldurk d35abd9727 Give proper name on constant buffer previewer for GL 2015-01-16 02:01:56 +00:00
baldurk af51c4f1e6 Tweak rasterizer page display to be a bit nicer 2015-01-16 01:14:21 +00:00
baldurk 6f0284f170 Show depth and stencil states on GL pipeline view 2015-01-16 00:43:44 +00:00
baldurk 1265b5bc6e Set up display of blend equations (and logic, overriding) 2015-01-16 00:18:34 +00:00
baldurk f459c63380 Show restart index on GL pipe state, and handle it being disabled 2015-01-15 23:37:17 +00:00
baldurk 1096308755 Show generic vtx in attributes, and show attribute names from VS 2015-01-15 23:16:55 +00:00
baldurk 99f3eb78cf Set up vertex input stage properly on GL pipeline view 2015-01-15 22:36:44 +00:00
baldurk abbcd7c80f Combine and compress some of the data tables in the D3D11 pipe view
* e.g. class instances only crazy people use, so there's no point to have
  it eating up a ton of space when 99.9% of the time it's empty. Also
  the border colour in samplers is only listed if the addressing is set to
  use the border colour.
* I also collapsed down some of the columns to make it a little simpler
  visually, like min lod/max lod become just "lod clamp" with a range, and
  constant buffers simplified down to a couple of columns.
2015-01-15 22:14:03 +00:00
baldurk 57a1988755 Try not to scroll resource etc tables in pipeline state
* When jumping between draws the tables are rebuilt which destroys any
  vertical scrolling, so we save/restore it which means the same row will
  be at the top of the view. If there are fewer resources it'll just be
  as scrolled down as possible.
2015-01-15 19:02:10 +00:00
baldurk 930c1c53d5 Crash fixes if drawcall is NULL 2015-01-15 19:00:44 +00:00
baldurk f013f6fd29 Store index format and topology in drawcall, to accommodate GL
* D3D11 just latches the state from the input assembler state into the
  drawcall when it's being added. GL stores the state per-draw.
2015-01-15 17:17:12 +00:00
baldurk 04f1d4a378 Centralise debug message processing, and allow adding custom warnings
* This will allow the adding of things like 'redundant api call' for calls
  that have no effect, as well as potential problems like drawing with an
  empty viewport, or similar things that are common problems. Reading out-
  of-bounds on buffers etc is a good example of 'defined' behaviour that
  is probably not desired.
* These heuristics could also identify potential performance problems.
* It also supports adding debug messages after log-load time, so you could
  do an additional extra-strength pass, or do a detailed check of one
  draw call (e.g. a broken draw, to try and figure out the problem). If
  there are any unread debug messages, the status bar will flash and the
  debug messages window will show a count as (N).
2015-01-11 00:20:50 +00:00
baldurk 6de7644e68 Don't bail out quite so quickly if vertex buffers are insufficient
* This allows 'partial' rows in the mesh viewer, if a vertex input element
  references invalid/out of bounds data, but the others are fine (coming
  from different streams).
2015-01-09 00:48:18 +00:00
baldurk 1c9269fc8d Add simple OpenEXR save/load support using tinyexr
* Thanks to https://github.com/syoyo/tinyexr for the load and save code!
2015-01-06 17:43:19 +00:00
baldurk 6fde127360 Refactor projects so we don't use xcopy to copy build outputs around
* This makes it easier for my auto build scripts (i.e. without xcopy use
  I can run them from msysgit bash).
* pdblocate now has Profile32&Release32 vs Profile64&Release64. This was
  the easiest way to do it as it has to be compiled in 32bit to interact
  with DIA, but we want it copied to the solutions output folder (x64/...
  or Win32/...)
2015-01-01 11:23:53 +00:00
baldurk 0df6e36ff5 Allow displaying any semantics as 'position' on mesh output view
* This means you can visualise the UVs directly, not just as a colour
  on the regular mesh.
2014-12-20 19:54:52 +00:00
loosche 9ef5080302 Change the normalized UV formatting to use Formatter.Format() instead of
doing it myself.
2014-12-19 00:31:17 -08:00
loosche 5f3b535d31 Add normalized UV coordinates to the TextureViewer window. 2014-12-19 00:11:19 -08:00
baldurk 6b34b5815d Don't kill connection thread if user cancels closing 2014-12-18 18:02:50 +00:00
baldurk e1d01970c6 Add fetching of Indirect params, and stepping through MultiDraw calls
* This means glMultiDrawIndirect is fetched, decomposed into child draw
  calls and you can step through them individually
2014-12-14 12:17:38 +00:00
baldurk a777a13021 Custom shaders should not blend, make channel buttons visible
* The RGBA channel enable buttons were applying anyway, they were just
  being hidden.
2014-12-11 19:49:03 +00:00
baldurk af0b869dee Fetch compute shader tex resources if it's a compute drawcall 2014-12-07 15:24:49 +00:00
baldurk fb8e6ac382 Output signature readwrite mask denotes unused, not used elements
* Credit to unbird from
  http://www.gamedev.net/topic/663475-renderdoc-weird-output-signatures/
  for identifying this :).
2014-12-06 20:58:37 +00:00
baldurk 69562fb82d Handle invalid index type reasonably gracefully 2014-12-02 00:16:29 +00:00
baldurk 52476118de Support doubles in shader vars natively, not packed in 2*uint32 each 2014-12-02 00:16:12 +00:00
baldurk c51fade47a Add support for texture rectangles. See gl-330-texture-rect 2014-12-01 22:55:35 +00:00
baldurk 49b2b2d2df Handle empty indices array without crashing 2014-12-01 13:14:43 +00:00
baldurk b6ba100ed1 Add a couple more buffer creation flags 2014-12-01 12:41:00 +00:00
baldurk 322c341fa2 Make it more obvious when input assembler buffers are not set. 2014-11-29 00:36:06 +00:00
baldurk ea8203e160 Add backface culling overlay 2014-11-27 23:36:06 +00:00
baldurk 2040a57e5d Check for new versions even if we think one is available
* This way if someone updates their install without clicking the menu item
  to clear this flag, it will still detect the update after a few days.
* (And when I forget to update which beta is latest, it will fix itself
  eventually. Oops).
2014-11-27 21:08:41 +00:00
baldurk 8b4475c73d Update mesh columns properly, and use correct stage when specified 2014-11-27 19:26:29 +00:00
baldurk d585c25633 Slightly expand pixel history column widths
* Should make exponential float values more obvious/visible.
2014-11-27 18:50:51 +00:00
baldurk 2484bc8bc7 Use UTF-8 everywhere possible and only use wchar_t where required.
* This means that all APIs pass byte string types. ALL strings everywhere
  in the entire codebase must be assumed to be and treated as UTF-8 content
  not ASCII.
* Gets rid of all the horrible %hs specifiers that caused warnings on
  linux! Hooray.
* We convert to wide strings, or use wide characters, only when necessary
  to use the Win32 API. Some windows specific code will stay in wide chars
  just for convenience.
* Files are already serialised as UTF-8 strings for linux/windows binary
  compatibility, so this change doesn't break backwards compatibility.
2014-11-23 14:45:16 +00:00
baldurk 3abdff49a7 Catch & ignore InvalidOperationException when scrolling
* Fix for a crash report - this exception can be thrown sometimes if the
  window is really small.
2014-11-22 09:50:19 +00:00
baldurk caa5e06644 Fix for crash report - check that event label is non-null 2014-11-22 09:49:36 +00:00
baldurk 65df5a9192 Check file hasn't been removed out from under us before saving 2014-11-15 12:21:27 +00:00
baldurk ecbd919d05 Try to preserve horizontal scroll between events on mesh view 2014-11-13 22:21:09 +00:00
baldurk 551b0372c8 Allow fully flexible display of position&other component on meshes
* You can choose which component will be used as 'position' when rendering
  vertex inputs. Helpful if a position component isn't auto-detected, or
  if you want to render UV co-ordinates onto the screen.
* Instead of fixed TEXCOORD0/Color options for solid shading onto the mesh
  you can choose a secondary column yourself.
* Also the solid shading options are available on vertex output meshes as
  well as inputs.
2014-11-13 18:37:58 +00:00
baldurk b255f5bc36 Protect against ArgumentException in Timeline Bar paint
* Crash report was submitted indicating a crash here, which is either
  memory issues or momentarily crazy-large window. We can catch the
  exception and just clear to black.
2014-11-12 23:38:40 +00:00
baldurk 8ca8ac4ab3 Fix range becoming 0 if both min and max were negative 2014-11-02 19:05:42 +00:00
baldurk 6308d78cd4 Implement debug device/debug api message tracking for GL 2014-11-02 10:52:24 +00:00