Commit Graph
2679 Commits
Author SHA1 Message Date
baldurk e22e813049 32-bit compile fixes with 64-bit buffer lengths and offsets 2016-09-23 16:33:44 +02:00
baldurk a88e0067b4 Add hacks to skip non-2D textures, or depth textures, and display MSAA 2016-09-23 16:00:12 +02:00
baldurk f0c6786ade No need for Serialise_CreateCommandList anymore
* This removes use of D3DLock which is a super-temporary ugly hack to
  avoid a deadlock in some cases
2016-09-23 15:59:48 +02:00
baldurk 6bb6d7da57 Use the right number to resize array, handling SingleRT mode 2016-09-23 15:58:34 +02:00
baldurk d104a887f1 Fix calls that were unwrapping an unwrapped list 2016-09-23 15:18:33 +02:00
baldurk e06c08d6bf Temporarily add a hack to skip serialising multisampled init states 2016-09-23 15:08:00 +02:00
baldurk dbe82f31e6 Bring across FillCBufferVariables from D3D11
* These implementations are identical and really only depend on DXBC -
  they should be shared.
2016-09-23 14:08:26 +02:00
baldurk aa7b5558af Allow GetBufferData from readback and upload heap buffers 2016-09-23 14:05:27 +02:00
baldurk d0fe1fb56f Implement GetBufferData() for D3D12 2016-09-23 13:28:54 +02:00
baldurk 004a3a1cc1 Make sure to apply barriers while executing - wrong state check 2016-09-23 13:14:05 +02:00
baldurk 131d3cedd2 Don't warn, silently drop unknown/undefined signature elements 2016-09-23 13:13:50 +02:00
baldurk 62a9052cdc Mute some more debug messages that are more trouble than they're worth
* The descriptor ones show up regularly in MS's MiniEngine sample
  project, so it hides possible real problems.
2016-09-23 13:04:33 +02:00
baldurk ed6b1a738c Don't set a 0 structure byte size for element size (unstructured buffer) 2016-09-23 13:03:56 +02:00
baldurk 05eb9d7efd Create pipeline state from blank slate, not over the top of previous 2016-09-23 12:07:30 +02:00
baldurk a1ff033d82 Although it overlaps, use the right union's members to lookup 2016-09-23 12:07:16 +02:00
baldurk 6810ec8e50 Fix wrong indexing building reflection data 2016-09-23 12:06:58 +02:00
baldurk 06e6677616 Divide up register spaces by shader stage (namespacing same as DX11) 2016-09-23 11:41:16 +02:00
baldurk f883ea0648 Apply descriptor offset from table binding 2016-09-22 17:51:40 +02:00
baldurk acb5e5ecd8 Fix crash due to unallocated compute descriptor 2016-09-22 17:09:25 +02:00
baldurk 5951ed723b Pass resource state data per-resource through for D3D12 2016-09-22 17:05:28 +02:00
baldurk db3181e7bb Implement D3D12 pipeline state, with shader resources 2016-09-22 16:55:41 +02:00
baldurk b9b419c86a Process root signature elements into pipeline state 2016-09-22 12:05:47 +02:00
baldurk 2e8b758fef Don't create a full empty array of viewports/scissors, just those set 2016-09-22 12:05:47 +02:00
baldurk e0c183c2df Compress string representations of a few common enums for display 2016-09-22 12:05:47 +02:00
baldurk 0f660e3ec2 Create and fill out D3D12 pipeline state, without shader resources.
* We make shaders into fake resources with IDs, so they can be
  identified individually (for replacement, fetching reflection data,
  and things like that). This is a little but ugly but worth it for the
  simplicity it will provide everywhere else.
2016-09-22 12:05:47 +02:00
baldurk dbb0e4702e Create DXBC reflection data for shaders in pipelines 2016-09-22 12:05:47 +02:00
baldurk 8b1a26287d Update D3D12 pipeline state to roughly match D3D12 state 2016-09-22 12:05:47 +02:00
baldurk af9017af0a Add D3D12 pipeline state (state and viewer duplicated from D3D11) 2016-09-22 12:05:47 +02:00
baldurk 946194ea20 Fix wrong output formatting when RenderTexture downcasts to RGBA8
* We were using the F32 pipeline (wrong! output is RGBA8) and setting
  rawoutput (which would ignore things like black/white point).
2016-09-22 11:34:06 +02:00
baldurk ae9f80ab98 Fix calculation of needed UBO size for SPIR-V reflection 2016-09-21 22:36:43 +02:00
Michael Rennie 57b5309a97 D3D11 RDCERR assumes size is 16byte aligned, as buffers are created so.
Fixes crash in Mesh Viewer.
2016-09-21 14:03:25 +01:00
baldurk ab77e74adb Add some bullet-proofing and better messages for GL errors. Closes #367
* While it's not feasible to completely protect against invalid use of
  APIs (or at least, it would be outside the scope of the project), we
  can at least add some friendlier/more clear messages to the asserts we
  already have, and add some simple NULL checks.
* This won't cover everything but at least it's better than nothing and
  might give a better idea of what the problem is.
2016-09-20 13:21:09 +02:00
baldurk ff62dbaa72 During replay, make sure calls to exported GL functions work. Refs #366
* These functions are intended only for hooking via LD_PRELOAD, but they
  will also be picked up by any replay application calling into GL. We
  need to make sure then that the real function pointer is fetched in
  time to be able to call it.
2016-09-20 13:21:09 +02:00
baldurk 45551e58cc Implement pixel picking on D3D12 2016-09-19 18:31:28 +02:00
baldurk ece0725d8e Fix display of mips with D3D12 texture display hack 2016-09-19 18:31:28 +02:00
baldurk 20b6c86119 Ensure barriers are recorded into the right command list for application 2016-09-19 18:31:27 +02:00
baldurk 759b75da8b Use cached vector 2016-09-19 18:31:26 +02:00
baldurk cd40051ac7 Add serialising of DiscardResource calls 2016-09-19 18:31:26 +02:00
baldurk 89e8743e08 Handle stencil ref and blend factor commands for D3D12 2016-09-19 18:31:25 +02:00
baldurk 39b0804cdb Add a single-flush-validate flush after each initial state application 2016-09-19 18:31:23 +02:00
baldurk 25e1d634fe Clear root signature bindings when a new signature is bound 2016-09-19 18:31:22 +02:00
baldurk 0bb42a0629 Set compute root signature elements to compute, not graphics 2016-09-19 18:31:21 +02:00
baldurk c5fb06bbca Transition the right subresource in barriers 2016-09-19 18:31:21 +02:00
baldurk 862223b4cb Disassemble root signature at replay time too 2016-09-19 18:31:20 +02:00
baldurk 278b2e41bc Add ExecuteIndirect and Dispatch serialisation 2016-09-19 18:31:19 +02:00
baldurk 32ae271664 Add remaining copy/resolve commands 2016-09-19 18:31:18 +02:00
baldurk 3df14b82be Serialise UAV clears (int/float) 2016-09-19 18:31:16 +02:00
baldurk 69e05cb0a4 Fill in the rest of the root signature functions 2016-09-19 11:44:01 +02:00
baldurk b79f170e24 Fix typo when mapping 3D texture - fetch right subresource. Refs #359 2016-09-17 09:17:24 +02:00
baldurk 081dfe5ae3 Update message code muting for latest SDK 2016-09-16 19:43:26 +02:00