Commit Graph

23 Commits

Author SHA1 Message Date
baldurk 0261095de6 Add selection of primitive to pixel debug from pixel history
* This means when multiple fragments are writing to a pixel you can choose
  precisely the one you want to debug, rather than the debugging always
  running the approximately last fragment to pass
2014-09-25 10:49:01 +01:00
baldurk 082a8afb9b Remove toolbar debug pixel button 2014-09-24 13:32:07 +01:00
baldurk f2637a7bff Use Range min/max vals to ignore sliders when fetching histogram 2014-09-17 18:44:05 +01:00
baldurk e81169f021 Add a dialog to guide users to selecting available save options 2014-09-16 01:27:08 +01:00
baldurk 326ca2ebe8 Move SaveTexture logic to replay layer
* Expand the abilities of the GetTextureData in replay drivers
  to be able to resolve samples and render down to RGBA8 unorm
  for file export to other programs.
* Greatly improve the ability to save textures - in theory any
  texture format/type/dimension/etc should now be mappable in
  sensible & useful ways to output formats.
2014-09-16 01:25:13 +01:00
baldurk 543165cece Give the shader viewer a better disambiguating title when debugging 2014-09-06 11:45:51 +01:00
baldurk d8daa093c5 Fix brain-dead filling of right click menu that was really slow. 2014-09-01 18:50:08 +01:00
baldurk 89e90f8c36 Replace mip selection with sample idx when viewing Tex2DMS. Refs #79
* Also for float/unorm texture add an additional "resolved" option that
  just does an unweighted average of all samples, which is the behaviour
  from before (assuming that's what ResolveSubresource does).
2014-08-29 01:54:14 +01:00
baldurk 55e0178ec9 Add quad overdraw mode. Thanks Stephen Hill (@self_shadow)!
* http://blog.selfshadow.com/2012/11/12/counting-quads/
* Quad Overdraw based on ScenePS4 from the revised implementation. The
  colours are new, up to 20 levels. Picking pixels shows the overdraw level
* Available per-pass and per-drawcall, a pass defined the same way as in
  the mesh view, drawcalls since last clear or RT change.
* List of events now passed through to RenderOverlay the same as RenderMesh
2014-08-17 15:28:51 +01:00
baldurk 7ab9815aaf Introduce a bindpoint mapping as part of the pipeline state
* For APIs where the shader namespace/bindpoint (which may be arbitrary
  like 'the Nth texture resource' can be mapped, at each event, to the
  actual API bind point where the object is.
* On D3D11 this is pass-through, on GL this returns the value of each
  uniform.
* This also means GL shader reflection structures are properly immutable
  and the variance in the uniform values is handled elsewhere.
* In future this might need to be expanded to support more complex binding
  methods, where the mapping returns the resource rather than just mapping
  to an integer bind ponit.
2014-08-13 15:56:55 +01:00
baldurk 6b74ce2f65 Add slight delay before calling PixelHistory to allow for painting 2014-08-07 21:43:57 +01:00
baldurk fb6b4a98b0 Show the pixel history tab early, fill it in with data when ready 2014-08-03 16:04:34 +01:00
baldurk b230be570f Inherit channel visibility from viewer, display inherited state
* A label is shown at the top of the pixel history showing the range
  display and visible channels. The channel visibility behaves the same as
  in the texture viewer - 2 or more and the other channels display as black
  and 1 channel displays grayscale.
2014-08-03 15:32:52 +01:00
Baldur Karlsson 9fda74fc07 Add a button on the texture viewer that flips the tex in Y
* Useful for systems that render OpenGL upside down with a final flip,
  for example.
2014-07-28 10:28:28 +01:00
baldurk 74a0330271 Ensure C# UI uses consistent culture on all threads. Closes #72
* This means that e.g. decimal separator will always be . and similar
  effects, which avoids the need to have culture specific formatting or
  special-case handling around CSV export etc.
2014-07-23 08:36:05 +01:00
baldurk 7f6e960d85 Bake in range-select min and max when opening a pixel history view
* I'm not sure if this 'hidden' latched UI state is good or bad, but it
  means the colours are visible if you've adjusted the range way outside
  of 0-1.
2014-07-15 12:06:25 +01:00
baldurk 3bb382d9cf Further progress on pixel history view
* Added simple UI
* Don't apply SRGB curve to alpha data
* Account for clear calls not returning occlusion query results, and for
  depth/colour clears.
2014-07-13 18:58:45 +01:00
baldurk ecfa6dbe7b Don't misidentify RTs as UAVs if UAVStartSlot is mis-set to 0 2014-07-13 15:14:27 +01:00
baldurk 75353bd190 Add toggle to disable gamma 'correction' of linear data. Closes #58
* The explanation is in the FAQ but the short explanation is that most
  data e.g. normal maps are conventionally displayed as if they contained
  SRGB data, so RenderDoc does the same so things look as expected.
2014-07-04 17:02:11 +01:00
baldurk 443ad1e967 Allow choosing background display even for no alpha. Closes #69
* Defaults to black, legacy behaviour. Colour (or checkerboard) is saved
  in persist data for texture viewer between sessions.
2014-07-01 00:37:23 +01:00
baldurk 185bbea851 Clamp picked pixel co-ords to texture size. Closes #68
* "Hover" co-ords still show larger values, in []s.
2014-07-01 00:02:57 +01:00
baldurk 92c1df0573 Check index is in valid range for pipeline arrays. 2014-06-07 13:48:09 +01:00
baldurk c38affcded Initial commit of existing code.
* All renderdoc code up to this point was written by me, history is available by request
2014-05-02 08:33:01 +01:00