Unknown W. Brackets
c581a83896
GPU: Centralize SetDisplayFramebuffer().
2022-08-23 19:29:06 -07:00
Henrik Rydgård
60e129d88e
Break out Draw2D in a class
2022-08-23 11:12:23 +02:00
Henrik Rydgård
83b7386f7d
Switch reinterpret shaders over to the Draw2D framework.
2022-08-23 11:12:23 +02:00
Henrik Rydgård
65e4e249ec
More Draw2D refactoring
2022-08-23 11:12:23 +02:00
Henrik Rydgård
5415da10bf
Rename VirtualFramebuffer->format to fb_format to line up with fb_address and fb_stride (fundamental parameters)
2022-08-23 08:37:44 +02:00
Henrik Rydgård
a0722af107
Rename fmt->fb_format
2022-08-23 08:37:44 +02:00
Henrik Rydgård
51686f4936
Copy color from overlapping framebuffers on bind, under certain conditions.
...
Leads to much faster performance in Juiced 2.
This will later be expanded to handle more things in a more elegant way,
like the framebuffer overlap in God of War for the shadows and
color reinterpretation in a generic way.
Fixes #15728
2022-08-22 16:06:55 +02:00
Henrik Rydgård
8e7cf596b6
Address more feedback, cleanup scale parameter
2022-08-21 09:58:58 +02:00
Henrik Rydgård
668de1f544
Compatibility check
2022-08-21 09:58:58 +02:00
Henrik Rydgård
9cc8cfaa08
Use a DX9-compatible method to pass texwidth and height. the effect doesn't work on DX9 yet though.
2022-08-21 09:58:58 +02:00
Henrik Rydgård
ca24f1b9aa
Fixes for D3D11
2022-08-21 09:58:58 +02:00
Henrik Rydgård
412d44dc92
Fix glitch when changing render resolution
2022-08-21 09:58:58 +02:00
Henrik Rydgård
89c96142a1
Really not sure how we can detect whether a depth deswizzle is needed :( Hopefully temporary flag...
2022-08-21 09:58:58 +02:00
Henrik Rydgård
e6b60026d1
Fix graphics in Ratchet & Clank. WIP
2022-08-21 09:58:58 +02:00
Henrik Rydgård
346a252593
Fix naming of temp fbos to be in PSP pixels
2022-08-21 09:58:58 +02:00
Henrik Rydgård
5046cbd015
Address feedback to PR #15858
2022-08-20 17:23:51 +02:00
Henrik Rydgård
29ea3ffe0c
Restore the clearing optimization, avoiding unnecessary depth copies
2022-08-20 09:46:15 +02:00
Henrik Rydgård
12db0e52d4
Fix deferred-depth for bezier/spline. Move updating of last_frame_depth_render to GPUCommon.
2022-08-20 08:29:33 +02:00
Henrik Rydgård
97dbba0ec3
Minor fixes. Everything seems fine now.
2022-08-20 08:29:33 +02:00
Henrik Rydgård
5d8fe4c2a8
Implement copying color to depth on load. However, weird stuff is happening..
2022-08-20 08:29:33 +02:00
Henrik Rydgård
94ade8c751
Extract depth copies to CopyToDepthFromOverlappingFramebuffers
2022-08-20 08:29:33 +02:00
Henrik Rydgård
886679c7ec
Remove the color-to-depth mode
2022-08-20 08:29:33 +02:00
Henrik Rydgård
a0ac2dffc7
Defer depth copies until depth buffer is actually used.
...
Fixes
2022-08-20 08:29:33 +02:00
Henrik Rydgård
bd6f79e473
Fix the raster depth blit again, which I recently broke.
2022-08-17 16:52:49 +02:00
Henrik Rydgård
74f1c94ddb
Use sequence numbers instead of a tracking array for depth buffers
2022-08-17 10:34:07 +02:00
Henrik Rydgård
078fc881a7
Revise comments according to feedback
2022-08-17 10:15:02 +02:00
Henrik Rydgård
a8b1d1191e
Oops, remove wrong comments
2022-08-17 10:09:12 +02:00
Henrik Rydgård
19367dd890
Comment updates
2022-08-17 10:09:12 +02:00
Henrik Rydgård
5785cf40ad
Clean up and comment framebuffer struct better, add bind sequence numbers
2022-08-17 10:09:11 +02:00
Henrik Rydgård
35a1ca064a
Refactor 2D pipeline creation
2022-08-16 19:27:46 +02:00
Henrik Rydgård
570e0326e7
Rely on refcounting for stencil upload shader modules
2022-08-16 15:10:48 +02:00
Henrik Rydgård
1e57a358b8
thin3d: Properly AddRef and Release shader modules from the pipeline in backends that need it
2022-08-16 15:10:48 +02:00
Henrik Rydgård
ccdb1f7330
Move out the reinterpret stuff to ReinterpretFramebuffer.cpp. Draw2D refactor.
2022-08-16 11:11:59 +02:00
Henrik Rydgård
9f2447c0b4
Assorted minor cleanup
2022-08-16 10:55:44 +02:00
Henrik Rydgård
5f9718ef92
Merge pull request #15843 from unknownbrackets/gpu-minor
...
GPU: Skip fb create upload when clearing
2022-08-16 00:05:10 +02:00
Unknown W. Brackets
6060706fc8
GPU: Avoid using depth buffers for blending.
...
For now, until it's implemented.
2022-08-14 22:13:39 -07:00
Unknown W. Brackets
0b22c98404
GPU: Skip fb create upload when clearing.
...
This doesn't verify it's a full screen clear, but on a new framebuffer
that's very very common.
2022-08-14 13:19:52 -07:00
Henrik Rydgård
79ee532609
Fix feature checks
2022-08-09 20:05:44 +02:00
Henrik Rydgård
252550fbd2
Enable framebuffer depth blits through raster. Fixes games like Jeanne D'Arc on D3D9.
2022-08-09 20:00:32 +02:00
Henrik Rydgård
131098c4d4
Some enum renaming, move RasterChannel to GPU.h.
2022-08-09 19:58:48 +02:00
Henrik Rydgård
d61909ca91
More framebuffer blit fixes.
2022-08-07 12:02:06 +02:00
Henrik Rydgård
b91ad1d2d7
Remove optimization in BlitUsingRaster that shouldn't have been there (redundant, lacked feature check)
2022-08-07 10:55:44 +02:00
Unknown W. Brackets
c212bd0fec
GPU: Clarify new framebuf stencil upload.
...
Actually, this doesn't need alpha either.
2022-08-06 21:18:48 -07:00
Henrik Rydgård
4658962b09
Feature detection fix on old GL, more compiler warning fixing
2022-08-06 18:47:12 +02:00
Henrik Rydgård
5f230ee998
Fix some compiler warnings
2022-08-06 18:19:27 +02:00
Henrik Rydgård
e28b45481b
Delete more unused code
2022-08-03 22:47:31 +02:00
Henrik Rydgård
f84d2e9ba7
Fixes, state invalidation
2022-08-03 22:23:07 +02:00
Henrik Rydgård
f8e0c09463
Delete unused stuff in all backends
2022-08-03 22:22:52 +02:00
Henrik Rydgård
126ace770e
Remove the D3D9 and Vulkan BlitFramebuffer functions
2022-08-03 22:22:52 +02:00
Henrik Rydgård
9d23939e28
Replace D3D11's BlitFramebuffer with the common one
2022-08-03 22:22:51 +02:00