Commit Graph

1397 Commits

Author SHA1 Message Date
baldurk 29efd6df2f Add X11 support for rendering to Qt windows via native handle 2015-07-10 16:38:23 +02:00
baldurk ae113bffe1 Update case on header files for Qt custom widgets 2015-07-10 16:38:23 +02:00
baldurk bb137371e3 Set up event browser QTreeWidget and allow browsing through the frame 2015-07-10 16:38:22 +02:00
baldurk a96167a110 Add resources to qrenderdoc (identical to renderdocui resources) 2015-07-10 16:38:21 +02:00
baldurk 1d87a6eec0 Add CustomPaintWidget and super-super hacky initial 'rendering' test 2015-07-10 16:38:21 +02:00
baldurk 4c6a77d5d8 Slight tweaks (non-final) to get deallocate working properly in Qt UI 2015-07-10 16:38:20 +02:00
baldurk 42c6013058 Include Makefile.debug and Makefile.release in .gitignore 2015-07-10 16:38:19 +02:00
baldurk f04b72ba07 Add missing \s from merge conflict 2015-07-10 16:38:18 +02:00
baldurk 1e7a473354 Placeholder event browser and texture viewer windows, for testing 2015-07-10 16:38:18 +02:00
baldurk 764d13e11d Include ToolWindowManager for Qt docking implementation
* From https://github.com/Riateche/toolwindowmanager
* It seems superior to the built-in Qt docking as-is, and since it's
  a few open source files it should be easy to improve with features
  we might want to match DockingUI functionality.
* Programmatic sizing for the default layout seems inflexible, but since
  that's a one-time thing it's not the end of the world.
* There's no auto-hide functionality.
* The highlighting of where to drop could be improved, as well as the
  detection of where to drop (currently it seems to cycle through
  several possibilities each second rather than having a consistent drop
  location).
* Floating windows could be styled a bit better.
* Need to check whether we can have nested docking sections (so the
  texture viewer e.g. can have its own docks, that won't float or go out
  of the texture viewer.
2015-07-10 16:38:17 +02:00
baldurk e68e8efa40 rename mainwindow to MainWindow 2015-07-10 16:38:16 +02:00
baldurk b2c582aea1 Fixes for qrenderdoc on linux 2015-07-10 16:38:15 +02:00
baldurk 35cc323ee4 Add skeleton qrenderdoc (just a qt template) & include in linux build
* Building qrenderdoc on windows will be supported just because that's
  likely where I will be developing it mostly, but for the foreseeable
  future it won't be built by default. If it ever gets good enough to
  replace the .NET UI, then we can look at it again.
2015-07-10 16:38:14 +02:00
baldurk ea1be90280 Add glslang to LICENSE information 2015-07-10 16:37:44 +02:00
baldurk ddd432f678 Add warning if dispatch has 0 dimension, and bounds-check on debugging 2015-07-09 20:42:34 +02:00
baldurk fa800936ad Compile fix 2015-07-09 09:03:24 +02:00
baldurk db27c6a28d Enable warnings as errors 2015-07-08 23:59:15 +02:00
baldurk 877b7e7e6d Fix compiling - don't compile linux ossource.cpp on any platform 2015-07-08 23:59:14 +02:00
baldurk 3747a5ef4f Add enough SPIR-V disassembly for the example shader in the spec
* It's quite hacky at the moment since it doesn't read out the data in
  a structured way, just enough to disassemble. For now it's a proof of
  concept kind of thing.
2015-07-08 23:59:13 +02:00
baldurk 113bc227ce Do a little SPIR-V disassembly 2015-07-08 23:45:19 +02:00
baldurk 1b0d545fbe Compile GLSL shaders to SPIR-V to generate 'disassembly' (hex dump) 2015-07-08 23:45:18 +02:00
baldurk 4ee82dd1b0 Added glslang GLSL and SPIR-V reference compiler
* This is tracking my fork of the Khronos repository
  https://github.com/baldurk/glslang on branch 'renderdoc'. See that
  branch for my local changes. Only a subset of files is included
2015-07-08 23:45:17 +02:00
baldurk 45351acdf6 Linux compile fix 2015-07-08 17:30:01 +02:00
baldurk 44adfc7b82 Add a 'tips' dialog. Still needs to be mostly filled out with tips 2015-07-08 00:18:58 +02:00
baldurk 8e37133d69 Add event bookmarks to the event browser 2015-07-07 23:32:48 +02:00
baldurk a9b5fdbd31 D3D11 views now get separate lifetime tracking
* This means that rapidly creating and destroying views doesn't 'leak'
  and create more and more chunks in-program and more and more uselessly
  created views on replay.
2015-07-07 21:40:09 +02:00
baldurk 3e7b581250 Add missing RELEASE define to driver/shader module vcxprojs 2015-07-07 21:32:04 +02:00
baldurk 0351dc2cbd Speculative crash fix - check for device pointer being valid
* I don't think this can happen unless the user code is calling Release
  on something that's already released (only time device pointer NULL'd)
2015-07-07 19:45:12 +02:00
baldurk c915d44af7 Clamp the selected sample to valid range 2015-07-07 19:40:07 +02:00
baldurk 54c37eaffb Check texture list size to make sure bind isn't out of bounds 2015-07-07 19:22:26 +02:00
baldurk de25800794 Don't declare unused exceptions (warning fix) 2015-07-07 19:20:41 +02:00
baldurk f6527107dc Add try {} catch to handle exceptions thrown from IO operations 2015-07-07 19:06:31 +02:00
baldurk 5232ee7626 Don't allow direct writes to RangeMax/RangeMin that can break things
* The old code in m_RangeMax/m_RangeMin setters wasn't doing proper
  epsilon enforcing so min=max could end up happening. It's easier to
  set both at once (this is all we care about anyway) so that it does
  properly make the min and max distinguishable.
2015-07-07 18:30:14 +02:00
baldurk 80c76fab5f Completely speculative fix for crash in shader viewer tooltip
* There were two bug reports of NullReferenceException on line:

  hoverWin = m_HoverNode.OwnerView;
* Which doesn't make sense since m_HoverNode must be non-null to go by
  the lines above, and all the callbacks should run on the UI thread so
  it can't be a race.
* Caching locally and checking for OwnerView/ListView being valid might
  fix the crash. Hopefully!
2015-07-07 18:05:17 +02:00
baldurk d882cab511 Inherit OwnerView into TreeListView Node's children 2015-07-07 18:03:46 +02:00
baldurk e79c98c85a Fix crash if tooltip is still open when watch variable is deleted 2015-07-07 17:38:52 +02:00
baldurk 7f240b4d14 Update the register tooltip as you step, if it's open 2015-07-07 16:48:02 +02:00
baldurk 4c988e9e3a Better arcball controls in the mesh viewer
* Tweaked flycam a bit too, but not much.
* Refactored the API/C# side camera classes to avoid exposing a ton of
  stuff just to do relative rotations in the arcball via quaternions.
2015-07-07 15:38:00 +02:00
baldurk 4444da212d Handle bounding boxes of 1 and 2 component types properly 2015-07-07 10:17:58 +02:00
baldurk dd9aff3890 Implement right click to pick vertices in the mesh viewer. Refs #139 2015-07-07 10:02:36 +02:00
baldurk d6e1b012de Check if we're running feature level 11.1, not if the 11.1 iface is up 2015-07-07 01:50:19 +02:00
baldurk edda31248f Render bounding box around mesh, centre & scale arcball on bbox
* The arcball lookat position can also be dragged with alt-click or
  middle click.
* Also supports other elements as position not just magically-selected
  "POSITION" element.
2015-07-06 19:58:45 +02:00
baldurk b23db183b6 Bugfix for raw buffer data not being properly filled out in mesh view 2015-07-06 19:46:59 +02:00
baldurk 36f12d1ef2 Add export to CSV option in cbuffer previewer. Refs #140 2015-07-06 18:16:20 +02:00
baldurk 6afbe8c92b Add exception handling on Clipboard.SetText, fall back to SetDataObject 2015-07-06 18:15:49 +02:00
baldurk 069e2047ae Enable MSAA on the mesh preview 2015-07-06 17:45:11 +02:00
baldurk 7277d5d76e Support pixel history over a specific mip/array slice only 2015-07-06 17:18:19 +02:00
baldurk 6bb8ebee32 Fix loop count for freeing UAvs 2015-07-06 17:14:16 +02:00
baldurk 1134988665 Fix shader debugging when rendering to mips of a texture 2015-07-06 15:53:02 +02:00
baldurk 95bda3d588 Tweak slice/mip auto-selection for render targets rendering to mips
* Should mean the 'target' of the render target will be selected by
  default now when clicking to an event, without annoyingly switching
  away from what you were looking at.
2015-07-06 15:49:22 +02:00