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
|
482a371bb0
|
d3d12: set max_depth_value based on depth format
|
2015-08-12 00:26:54 +02:00 |
|
vlj
|
24c23dc5f6
|
d3d12: Use dummy texture to fill empty texture slot
vertex attribute test has a shader that reads a texture, but rpcs3
doesn't provide the texture ; this makes WARP crash.
|
2015-08-12 00:26:52 +02:00 |
|
vlj
|
93e20c0853
|
d3d12: Fix index count
|
2015-08-12 00:26:49 +02:00 |
|
vlj
|
224503d2dc
|
d3d12: Move program related code out of D3D12GSRender and some get* format functions
|
2015-08-12 00:26:48 +02:00 |
|
vlj
|
2d0dbf4949
|
d3d12: Async semaphore leads to deadlock, make it sync, but do resource garbage collection async
|
2015-08-12 00:26:46 +02:00 |
|
vlj
|
10b92d45d1
|
d3d12: Use RSXThread width height for viewport
Thanks to raven02 for finding this, it fixes render to texture test
|
2015-08-12 00:26:45 +02:00 |
|
vlj
|
4966ab565a
|
d3d12; Clean resource sooner and fix crash with VS debugger.
|
2015-08-12 00:26:45 +02:00 |
|
vlj
|
ff9f348ec2
|
d3d12: Use finer pitch when downloading rtt
|
2015-08-12 00:26:43 +02:00 |
|
vlj
|
c2d3c857b6
|
d3d12: Handle w16Z16Y16X16 rtt format
It doesnt fix completly render_to_texture test but it helps.
|
2015-08-12 00:26:43 +02:00 |
|
vlj
|
b8ba902657
|
d3d12: Fix rtt size (and crash in render_to_texture test)
|
2015-08-12 00:26:42 +02:00 |
|
raven02
|
68d3f6f536
|
d3d12: minor cleanup
|
2015-08-12 00:26:41 +02:00 |
|
raven02
|
4ef66e6901
|
d3d12: Add blend for MRT
|
2015-08-12 00:26:41 +02:00 |
|
raven02
|
e72d098ea1
|
d3d12: use CELL_GCM suffix
|
2015-08-12 00:26:40 +02:00 |
|
vlj
|
27e56b6199
|
d3d12: Do not set mask if not requested
|
2015-08-12 00:26:39 +02:00 |
|
vlj
|
bdeb08e045
|
d3d12: Add color masking
|
2015-08-12 00:26:39 +02:00 |
|
vlj
|
acb8f82f84
|
d3d12: Add front/back face culling setting
|
2015-08-12 00:26:38 +02:00 |
|
vlj
|
b465992178
|
d3d12: Fix stencil op
Thanks to raven02 for noticing them !
|
2015-08-12 00:26:38 +02:00 |
|
vlj
|
c73d19161b
|
d3d12: Disable depth/color buffer write if not requested
Doesnt really increase performance...
|
2015-08-12 00:26:37 +02:00 |
|
vlj
|
d564c25241
|
d3d12: Use real depth function too
|
2015-08-12 00:26:37 +02:00 |
|
vlj
|
02f15810ee
|
d3d12: Implement stencil states
Unfortunatly it doesnt solve stencil reflect test atm
|
2015-08-12 00:26:35 +02:00 |
|
vlj
|
caf863be4d
|
d3d12: Fix crash at exit
|
2015-08-12 00:26:29 +02:00 |
|
raven02
|
25c09c5088
|
d3d12: Add Blend Op
|
2015-08-12 00:26:28 +02:00 |
|
vlj
|
a2b8d3a885
|
d3d12: Fix memleak
|
2015-08-12 00:26:27 +02:00 |
|
vlj
|
593b9a494d
|
d3d12: Double texture storage size
|
2015-08-12 00:26:27 +02:00 |
|
vlj
|
a5fb8c95f4
|
d3d12: Fix interframe sync
|
2015-08-12 00:26:25 +02:00 |
|
vlj
|
ac352cd083
|
d3d12: Use custom loadvertex like call
|
2015-08-12 00:26:25 +02:00 |
|
vlj
|
b63c77ca7d
|
d3d12: Swap current/non current right after present has been called
|
2015-08-12 00:26:24 +02:00 |
|
vlj
|
9e2dfcaba3
|
d3d12: fix memleak
|
2015-08-12 00:26:24 +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
|
461bf12c4f
|
d3d12: Cleaning
|
2015-08-12 00:26:23 +02:00 |
|
vlj
|
9748007cd3
|
d3d12: Use ring buffer for textures too
It looks like the texture size calculation is wrong, it can lead to
crash
|
2015-08-12 00:26:21 +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
|
59aca7566e
|
d3d12: Some fixes to avoid running out of constant spaces
|
2015-08-12 00:26:19 +02:00 |
|
vlj
|
e0cff6b0b4
|
d3d12: Start using a ring-like buffer for constants
|
2015-08-12 00:26:19 +02:00 |
|
vlj
|
25b10c5e3e
|
d3d12: Consume less descriptor slot if not required
|
2015-08-12 00:26:17 +02:00 |
|
raven02
|
0be60890e7
|
d3d12: minor fixes
|
2015-08-12 00:26:14 +02:00 |
|
vlj
|
fdf24545af
|
d3d12: Raise texture upload heap to make multi texture work
The result is not in line with PS3 real output though
|
2015-08-12 00:26:14 +02:00 |
|
vlj
|
e454f59f97
|
d3d12: Fix depth buffer not being transitionned to generic read
|
2015-08-12 00:26:13 +02:00 |
|
vlj
|
aac93b9063
|
d3d12: Clean code + fix warnings
|
2015-08-12 00:26:13 +02:00 |
|
vlj
|
001dc7cf57
|
d3d12: Do not copy fbo, just use new one
|
2015-08-12 00:26:12 +02:00 |
|
vlj
|
5a57564b0c
|
d3d12: Forgot a hunk
|
2015-08-12 00:26:12 +02:00 |
|
vlj
|
01ac9f02d2
|
d3d12: Use placed resource for depth conversion result
|
2015-08-12 00:26:11 +02:00 |
|
vlj
|
2636fb457e
|
d3d12: Use placed resource for mrt readback
Should be slightly faster (no allocation)
|
2015-08-12 00:26:11 +02:00 |
|
vlj
|
6877e5e3ba
|
d3d12: Start using heap for depth buffer readback
|
2015-08-12 00:26:09 +02:00 |
|
vlj
|
90fb4396fe
|
d3d12; Add a texture cache
|
2015-08-12 00:26:08 +02:00 |
|
raven02
|
d8f76f5aee
|
d3d12: Add LogicOp
|
2015-08-12 00:26:08 +02:00 |
|
vlj
|
f382ba0319
|
d3d12: Enable multiple mrt read
|
2015-08-12 00:26:07 +02:00 |
|