Commit Graph
1134 Commits
Author SHA1 Message Date
baldurk 8552c18efc Change how pixel debug quad is generated from derivatives
* Should be a bit more accurate, making some assumptions about coarse
  and fine derivatives, but hopefully means shader debugging is less
  divergent from the actual output.
2015-07-14 21:09:25 +02:00
baldurk 441e30187d Handle crazy weirdness with register packing of interpolator arrays 2015-07-13 22:45:03 +02:00
baldurk 4a401460d3 Fetch layer and mip level for FBO attachments 2015-07-13 00:05:42 +02:00
baldurk 3304830086 Fix pixel history shader output values when looking at a mip 2015-07-13 00:02:54 +02:00
baldurk 97e0697cc2 Remove -Wno-error from glslang files 2015-07-12 12:09:32 +02:00
baldurk 0f54cc550c Update glslang to latest code.
* From renderdoc branch on https://github.com/baldurk/glslang
2015-07-12 12:08:00 +02:00
baldurk 5f08324d71 Remove some debug code that snuck in somewhere (!) 2015-07-12 01:04:43 +02:00
baldurk f513195ae9 Make sure to handle chunks referencing otherwise unused buffers 2015-07-12 00:43:39 +02:00
baldurk 5a79ecb0c6 Don't track AddParent() for VAOs
* It's useless since we stop listening to VAO updates after a short
  while so it gets out of date - and we work around that elsewhere.
* Also the existing code that this change removes was buggy and was
  adding parents to the context record.
2015-07-12 00:15:56 +02:00
baldurk dd70744117 Drop assert about event stack underflowing 2015-07-11 23:54:25 +02:00
baldurk 943ed67149 Fix memory leak when buffer orphaning with glBufferData 2015-07-11 23:44:22 +02:00
baldurk 233c8d07d6 Disable glslang use for SPIR-V compilation until it's proven more stable 2015-07-11 22:37:47 +02:00
baldurk 560c95cdc6 Updates from renderdoc branch on https://github.com/baldurk/glslang 2015-07-11 22:35:54 +02:00
baldurk ccb863b9c2 Check that we have a live texture before trying to fetch it 2015-07-11 22:35:11 +02:00
baldurk 49836d5fcc Make sure to mark programs bound to pipelines as frame referenced 2015-07-11 18:57:22 +02:00
baldurk a0d0a637b5 Be a little less aggressive marking framebuffers ReadBeforeWrite 2015-07-11 18:41:34 +02:00
baldurk e818c4e517 Don't bother with initial states for render buffers 2015-07-11 18:41:34 +02:00
baldurk 8bd6bcde8f Implement dirtying or referencing the whole state object at a time 2015-07-11 18:41:33 +02:00
baldurk c57334dad5 Disable the debug text file writing on capture 2015-07-11 17:58:22 +02:00
baldurk e6dfc4b721 Add calls to MarkResourceFrameReferenced in individual functions
* This might need future handling to catch the edge case where some
  parameters aren't marked referenced (e.g. textures when binding to
  FBO), and if those parameters aren't bound by the time of a draw, or
  used anywhere else, they'll be eliminated (as the call itself is
  redundant).
2015-07-11 17:19:08 +02:00
baldurk b192cc8666 Remove single frame capture limitation 2015-07-11 15:01:36 +02:00
baldurk 1c45b2b24e Handle failed captures and perform post-capture frame cleanup 2015-07-11 14:56:39 +02:00
baldurk 5d7a78a745 Add resources to list while capframing, that would be dirtied when idle 2015-07-11 14:47:54 +02:00
baldurk df931a7e20 Add functions (no impl yet) to mark bound state objects ref'd or dirty 2015-07-11 14:05:12 +02:00
baldurk 19490540d4 Remove RefAllResources enabling, as we'll fix things to work properly 2015-07-11 14:04:31 +02:00
baldurk 961820c155 Bump GL serialise version for these changes 2015-07-11 14:04:01 +02:00
baldurk 66b73c1784 Even if a framebuffer is high traffic, we need to mark bound tex dirty 2015-07-11 14:03:45 +02:00
baldurk a78800c88c Make sure copies propogate dirty state from source
* Also check high traffic resources
2015-07-11 14:02:54 +02:00
baldurk ac55f93ff6 Fix matching ifs to endifs on d3d11 shader debugging 2015-07-10 23:55:32 +02:00
baldurk 1f5c8a450a linux compile fixes 2015-07-10 18:08:24 +02:00
baldurk af5c40cf7b Need to allocate memory via callback to renderdoc.dll as well as freeing
* This whole interface really needs a tidy-up at some point, but for now
  this is enough.
2015-07-10 16:38:39 +02:00
baldurk d7c4c0be7d Give counter result union a name 2015-07-10 16:38:38 +02:00
baldurk 47d509749b Fix for upstream changes 2015-07-10 16:38:37 +02:00
baldurk e2d8bb1283 Make some destructors virtual, though we don't delete through parents
* It keeps compiling happy and warning-free
2015-07-10 16:38:34 +02:00
baldurk ea4350f52f Expose C++ interface via API headers, for C++ UI
* Since the exported C functions just take an explicit 'this' parameter
  and call the corresponding function, we can just make it contractual
  via a virtual interface that the pointer can be dereferenced.
2015-07-10 16:38:27 +02:00
baldurk 2d9ca94316 Fix some clang warnings with constructor initialise order 2015-07-10 16:38:26 +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 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 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 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