baldurk
acb38757cd
Add error if flushing an unmapped region of memory
2016-02-07 18:47:58 +01:00
baldurk
fa1520bc13
Follow the spec strictly - only coherent memory is 'implicitly flushed'
...
* Technically coherent memory isn't implicitly flushed either, but this
is handling is required if memory is mapped, written to, and unmapped
without ever hitting a QueueSubmit where we will check any current
coherent map, and treat it as persistent to flush it out.
2016-02-07 18:47:57 +01:00
baldurk
5bb4b0dc13
Mapped memory offsets don't have to be aligned at all
...
* The guarantee is that the base pointer (ie. returned pointer minus
offset) is aligned to some value.
2016-02-07 18:47:56 +01:00
baldurk
3b9f4da65a
Store resource record length field as uint64_t instead of int32_t
2016-02-07 18:47:55 +01:00
baldurk
04467206cb
pool counts seem to be reasonable - remove TODO
2016-02-07 18:47:54 +01:00
baldurk
f2d123a0e6
mark VKTODOs to do with GPU/device portability as such
...
* These won't get addressed before 1.0
2016-02-07 18:47:54 +01:00
baldurk
e8ded0d785
Initial state aspect handling incorrectness is much less severe now
2016-02-07 18:47:53 +01:00
baldurk
75a2a4257b
Remove VKTODO notes, not needed anymore
2016-02-07 18:47:52 +01:00
baldurk
9bd7ed9d61
Improve text reporting for render pass load/store operations
2016-02-07 18:47:51 +01:00
baldurk
88d7cb4ef1
Add VectorTimesMatrix to disassembly
2016-02-07 18:47:50 +01:00
baldurk
cf92126d7c
Update mesh output note in future work
2016-02-07 18:47:49 +01:00
baldurk
a72ea00210
Free PostVS data on shutdown
2016-02-07 18:47:48 +01:00
baldurk
09f8564c4d
Add message if side-effects features aren't available
2016-02-07 18:47:48 +01:00
baldurk
fcb822b021
Update release notes - mesh output data is now available!
2016-02-07 18:47:47 +01:00
baldurk
e03d5b01c2
Get right number of components for RGB formats
2016-02-07 18:47:46 +01:00
baldurk
48a03ae21f
Only fetch the PostVS data needed for this draw, not the whole buffer
...
* For instanced draws where there are many instance and each instance is
a lot, this saves fetching a *ton* of redundant data.
2016-02-07 18:47:45 +01:00
baldurk
793d2690c4
Be more aggressive with null'ing/disposing old data, to garbage collect
2016-02-07 18:47:44 +01:00
baldurk
0b17197d79
Do buffer readbacks in vulkan replay with multiple copies
...
* We allocate a single fixed-sized buffer up front, and then whenever we
need to readback we copy chunks into it and read them back one at a
time. This trades off doing single copies (and so fewer GPU syncs)
against having massive GPU buffer allocations.
2016-02-07 18:47:43 +01:00
baldurk
ac575d355d
Avoid unnecessary copies/temporaries when returning buffer data
2016-02-07 18:47:42 +01:00
baldurk
0992c05ab9
Fix leaking memory in byte[] marshalling case
2016-02-07 18:47:41 +01:00
baldurk
7af71c60ad
Fetch per-instance vertex output data
2016-02-07 18:47:40 +01:00
baldurk
88bb62bde8
Mark instanced draws as instanced
2016-02-07 18:47:40 +01:00
baldurk
eabf1969c5
Add some utility functions for dumping/grabbing a file
...
* I keep rewriting these for debugging all over the place
2016-02-07 18:47:39 +01:00
baldurk
abcb20794e
Discard negative guessed near planes
2016-02-07 18:47:38 +01:00
baldurk
382031ea01
Ditch ShouldSkipOutput - not needed. Access array parameters properly
2016-02-07 18:47:37 +01:00
baldurk
4f784b07d5
Handle array outputs in SPIR-V, add array index to signature parameter
2016-02-07 18:47:36 +01:00
baldurk
0b61607cc7
When loading a log, default back to buffer view showing VSIn
2016-02-07 18:47:35 +01:00
baldurk
c005c51440
Calculate number of unique indices before modifying shader
...
* This will let us pass that number into the modification function so
that we can create an array of the exact right size, and also
calculate the stride per instance
2016-02-07 18:47:34 +01:00
baldurk
bd5a6752e2
Use viewport for guessing aspect ratio, not dimensions of depth/colour
2016-02-07 18:47:33 +01:00
baldurk
101d780956
Handle post-vs data being padded/aligned instead of tightly packed
2016-02-07 18:47:33 +01:00
baldurk
8818de4524
Use vertex stride from PostVS data if we're reading it
2016-02-07 18:47:32 +01:00
baldurk
c841210e62
Eliminate unused output signature elements like pointsize or clipdist
...
* They are often brought along with gl_PerVertex, but they're declared
and never used.
2016-02-07 18:47:31 +01:00
baldurk
852aa3be1d
Make sure to invert post-projection y before doing reprojection
2016-02-07 18:47:30 +01:00
baldurk
4361eb83d2
Don't add replay resource ID offset multiple times
2016-02-07 18:47:29 +01:00
baldurk
5cbb2653d3
Save used topology BEFORE setting it to point list
2016-02-07 18:47:28 +01:00
baldurk
06549f2647
Set point size when rendering meshes
2016-02-07 18:47:27 +01:00
baldurk
ad813afd0d
Fetch shader mesh output data from indexed drawcalls
2016-02-07 18:47:26 +01:00
baldurk
a766148fa3
Make sure output buffer and its members are properly aligned
2016-02-07 18:47:26 +01:00
baldurk
ca2efadf67
Move GetBufferData into debug manager
2016-02-07 18:47:25 +01:00
baldurk
f5cc277322
Render object as point list when dumping output data
2016-02-07 18:47:24 +01:00
baldurk
a1b034a58e
Correctly handle position being output or not
2016-02-07 18:47:23 +01:00
baldurk
f1b1799ef3
Handle shaders with an empty output signature
2016-02-07 18:47:22 +01:00
baldurk
4ee317566e
Type IDs are not allowed to alias in SPIR-V
2016-02-07 18:47:21 +01:00
baldurk
1b936f6269
Render secondary drawcalls in mesh view
2016-02-07 18:47:20 +01:00
baldurk
a5be2b4f48
Add post-vertex mesh data fetching. Not complete, but proof-of-concept
2016-02-07 18:47:19 +01:00
baldurk
cf13662804
Rename struct since VS seems to incorrectly alias it with Vulkan struct
2016-02-07 18:47:18 +01:00
baldurk
2ce192ef3c
Return mapped pointer when going through wrapped vkMapMemory on replay
2016-02-07 18:47:17 +01:00
baldurk
4d8013ff09
Fetch live pipeline layout when replaying vkCmdPushConstants
2016-02-07 18:47:17 +01:00
baldurk
10313415d9
Don't combine load/stores for non-function variables
2016-02-07 18:47:16 +01:00
baldurk
33f3f3b6de
A bit nicer nameless struct naming
2016-02-07 18:47:15 +01:00