Vincent Lejeune
|
63a54dd70d
|
d3d12: Rewrite per frame resource cleaning function.
|
2015-08-16 23:45:51 +03:00 |
|
Vincent Lejeune
|
09cc127dd9
|
d3d12: Use ComPtr<> instead of manually releasing some structures
|
2015-08-14 23:39:37 +02:00 |
|
Vincent Lejeune
|
9cb88b3a8d
|
d3d12: Use ThrowIfFailed instead of check to be inline with DX12 Samples
|
2015-08-14 23:39:37 +02:00 |
|
vlj
|
9b10895c38
|
d3d12: Fix build with latest master
|
2015-08-12 00:28:35 +02:00 |
|
vlj
|
8801abb93a
|
d3d12: Refactor index management
Separates it from vertex management and move all the logic (forced
indexing, index count calculation...) outside of GSRender.
|
2015-08-12 00:28:29 +02:00 |
|
vlj
|
91809c09d4
|
d3d12: use memcpy instead of streamToBuffer for alpha settings
streamToBuffer doesn't work well for data < 128 bits
|
2015-08-12 00:28:28 +02:00 |
|
vlj
|
bf394d4f56
|
d3d12: Support triangle fan
Fix missing character members in the guided fate paradox
|
2015-08-12 00:28:28 +02:00 |
|
vlj
|
1c7bff4d36
|
d3d12: Use align instead of powerOf2Align
|
2015-08-12 00:28:20 +02:00 |
|
vlj
|
141c7ef340
|
d3d12: Do not cache non buffer vertex attribute
Fix dice test
|
2015-08-12 00:28:19 +02:00 |
|
vlj
|
73aeda1507
|
d3d12: Use stream to buffer to upload vertex constants
|
2015-08-12 00:28:19 +02:00 |
|
vlj
|
2c802735bd
|
d3d12: Fix crash + use ref instead of copying in some for loops
|
2015-08-12 00:28:18 +02:00 |
|
vlj
|
8f31211557
|
d3d12: Avoid copying 8k of constant data per draw call
|
2015-08-12 00:28:17 +02:00 |
|
vlj
|
4ee66a2680
|
d3d12: Implement intraframe vertex caching
|
2015-08-12 00:28:16 +02:00 |
|
vlj
|
aa66ddcd86
|
d3d12: Add some code documentation + rename some functions
|
2015-08-12 00:28:09 +02:00 |
|
vlj
|
f2d39d0e82
|
d3d12: Use fixed width/height scale and use surface_clip info for scaleOffset matrix
Thanks to raven02 for the patch.
|
2015-08-12 00:28:09 +02:00 |
|
vlj
|
41577b5018
|
d3d12: Fix some warnings
|
2015-08-12 00:28:03 +02:00 |
|
vlj
|
75a52219e0
|
d3d12: Rewind constant buffers get value
|
2015-08-12 00:28:03 +02:00 |
|
vlj
|
d2c13bc4c1
|
d3d12: Use a commited resource for constant buffer
Since we rarely use more than 1k of constant data we waste space due to
alignment requirement with heap so use a commited resource instead.
|
2015-08-12 00:28:02 +02:00 |
|
vlj
|
2f54482592
|
d3d12: Make depth test optionnal and use (0,0,0,0) when texture unit is disabled
|
2015-08-12 00:28:01 +02:00 |
|
raven02
|
da923f8a3d
|
d3d12: declare bufferSize for allocation
|
2015-08-12 00:26:53 +02:00 |
|
vlj
|
70b537c8c2
|
d3d12: Implement discard
Should make alpha test kill test almost working as it should.
|
2015-08-12 00:26:51 +02:00 |
|
vlj
|
ad55cced13
|
d3d12: Fix vertex buffer sometimes incomplete.
|
2015-08-12 00:26:47 +02:00 |
|
vlj
|
5f46b32616
|
d3d12: Use instancing to pass constant vertex attribute
Maybe a bit hackish but it works.
|
2015-08-12 00:26:36 +02:00 |
|
vlj
|
64a555caca
|
d3d12: Write data to single vertex attrib
stencil reflect has some color but it's still broken.
|
2015-08-12 00:26:35 +02:00 |
|
vlj
|
e3b73f9ea0
|
d3d12: Fix vertex error in stencil reflect
|
2015-08-12 00:26:34 +02:00 |
|
vlj
|
694d4e01a0
|
d3d12: Use openMP for vertex buffer mapping and factorize function
|
2015-08-12 00:26:31 +02:00 |
|
vlj
|
7db3599648
|
d3d12: Ping pong between data to avoid gpu stall as much as possible
|
2015-08-12 00:26:23 +02:00 |
|
vlj
|
6bb5dd2125
|
d3d12: Use ring like buffer for vertex index data
|
2015-08-12 00:26:20 +02:00 |
|
vlj
|
f721f2cbaa
|
d3d12: Use ring like heap for vertex and fragment constants too
|
2015-08-12 00:26:20 +02:00 |
|
vlj
|
e0cff6b0b4
|
d3d12: Start using a ring-like buffer for constants
|
2015-08-12 00:26:19 +02:00 |
|
vlj
|
043adab2ce
|
d3d12: Fix fragment constant filling
The command buffer does not necessarily set them in order...
|
2015-08-12 00:26:16 +02:00 |
|
vlj
|
3aafb60629
|
d3d12: Fix offset in scale offset
Depth Buffer should be correctly positionned in depth_read test
|
2015-08-12 00:26:15 +02:00 |
|
vlj
|
88d05a08cf
|
d3d12: Use a dummy texture to fill unused slots
|
2015-08-12 00:25:58 +02:00 |
|
vlj
|
c167a1228e
|
d3d12: Revert back to a signel resource storage
Using two of them doesnt increase perf atm but eats twice the space
|
2015-08-12 00:25:57 +02:00 |
|
vlj
|
b72d435ce8
|
d3d12: fix stencil reflect again
|
2015-08-12 00:25:53 +02:00 |
|
vlj
|
c5a1f8930f
|
d3d12: Another fix for vertex buffer not big enough buffer
|
2015-08-12 00:25:52 +02:00 |
|
vlj
|
233450a7ca
|
d3d12: Fix stencil reflect test
|
2015-08-12 00:25:51 +02:00 |
|
vlj
|
8bd678afc0
|
d3d12: Fix vertex buffer reconstruction with mismatching stride
|
2015-08-12 00:25:51 +02:00 |
|
vlj
|
10cc2c080c
|
d3d12: Try to reconstruct packed vertex buffers
|
2015-08-12 00:25:50 +02:00 |
|
vlj
|
2709a3e49a
|
d3d12: Use streaming buffer for index buffer
|
2015-08-12 00:25:49 +02:00 |
|
vlj
|
90e0a89e9b
|
d3d12: Try to use stream function that doesn't pollute cache
|
2015-08-12 00:25:49 +02:00 |
|
vlj
|
a6770813b1
|
d3d12: Fix var not initialized
|
2015-08-12 00:25:48 +02:00 |
|
vlj
|
e9fab57a0e
|
d3d12: Fix indexed quad draw
We were not positionning the index buffer correctly in the heap.
|
2015-08-12 00:25:47 +02:00 |
|
vlj
|
82545a7b56
|
d3d12: Clean indexed draw buffer gen code
|
2015-08-12 00:25:47 +02:00 |
|
vlj
|
22f413be3a
|
d3d12; Live buffer related code and factorise resource_desc for buffers
|
2015-08-12 00:25:46 +02:00 |
|
vlj
|
87d51665dc
|
d3d12: Fix some warning
|
2015-08-12 00:23:24 +02:00 |
|
vlj
|
28b964aeb0
|
d3d12: Fix Input Layout
|
2015-08-12 00:23:19 +02:00 |
|
vlj
|
9abaf80099
|
d3d12: Vertex element are not interleaved.
|
2015-08-12 00:23:17 +02:00 |
|
vlj
|
8ec9f84c1b
|
d3d12; Factorise IALayout generation code
|
2015-08-12 00:23:16 +02:00 |
|
vlj
|
722e6b8ac5
|
d3d12: Fix some warning and start adding IALayout support
|
2015-08-12 00:23:15 +02:00 |
|