Commit Graph

7467 Commits

Author SHA1 Message Date
Henrik Rydgård
bd674c47b6 OpenGL: Fix regular depal (shader depal still worked) that broke recently 2022-08-24 11:01:57 +02:00
Henrik Rydgård
ff92d7d4b0 Remove duplicate uniform queries 2022-08-24 10:51:45 +02:00
Henrik Rydgård
eb2f12e64a Drive-by texture slot management cleanup 2022-08-24 10:22:58 +02:00
Luboš Vonásek
c5cb45b1f7
Merge branch 'hrydgard:master' into feature_openxr_6dof 2022-08-24 06:55:31 +02:00
Henrik Rydgård
5d50d02227
Merge pull request #15894 from unknownbrackets/debugger
GE Debugger: Record only one flip if display framebuf not changed, step on vsync
2022-08-24 06:27:31 +02:00
Unknown W. Brackets
7ec62a32b4 GPU: More consistently clear ptrs on DeviceLost().
Rather get a null pointer crash than confusing buggy use-after-free
excitement.
2022-08-23 20:15:30 -07:00
Unknown W. Brackets
47b7305bf5 GPU: Correct Draw2D::DeviceRestore(). 2022-08-23 20:07:53 -07:00
Unknown W. Brackets
27d00199c8 GE Debugger: Fix bad read on step at start of VRAM. 2022-08-23 19:50:19 -07:00
Unknown W. Brackets
a901fa4315 GE Debugger: Add separate step based on vsync.
I think there were some games where this would step in the middle of a
frame, but not seeing it commonly now.  So make it the default, but allow
both methods in the menu.

Fixes #15893.
2022-08-23 19:48:34 -07:00
Unknown W. Brackets
c581a83896 GPU: Centralize SetDisplayFramebuffer(). 2022-08-23 19:29:06 -07:00
Unknown W. Brackets
86085335ca GE Debugger: Record 1 flip if no display calls.
Before we were waiting 4 flips before ending recording.
2022-08-23 19:20:14 -07:00
Henrik Rydgård
fc81b76b98 Vulkan: Very minor chnages after checking Best Practices with new validation layer 2022-08-23 23:55:53 +02:00
Henrik Rydgård
5084743bbb Use Draw2D for depal shaders (except the actual blit, for now) 2022-08-23 11:21:40 +02: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
d1336fe15f Small Draw2D refactor 2022-08-23 08:37:44 +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
8fdd00db8c
Merge pull request #15888 from hrydgard/copy-color-on-bind
Copy color from overlapping framebuffers on bind, under certain conditions
2022-08-23 08:37:33 +02:00
Unknown W. Brackets
d1c7520932 D3D9: Correct viewport offset sign. 2022-08-22 21:30:10 -07:00
Unknown W. Brackets
86e754fb4a D3D11: Correct viewport offset sign handling. 2022-08-22 21:29:49 -07: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
e3943f6d0d Implement smoothed depal for the "old" depal path as well. 2022-08-22 15:34:26 +02:00
Henrik Rydgård
2a6015c1e3 Better checks for smoothed depal 2022-08-22 15:25:28 +02:00
Henrik Rydgård
6558bde0f6 Remove SmoothedDepal compat setting, instead detect the ramp directly. 2022-08-22 15:24:41 +02:00
Henrik Rydgård
f5e6754ac0 Special case depal lookups for Test Drive's strange usage.
This implements the hack I suggested in #13355, where instead of first
reducing the color to RGB565 as the real game does, we just take each
channel at full precision and do the lookup according to the mask,
linearly filtering the palette.

This makes the game look a lot nicer and is also a small optimization,
but the hack is very specific so kinda ugly in a way.
2022-08-22 15:19:38 +02:00
Henrik Rydgård
b39b74e602 More renaming. Fix shader view for Vulkan 2022-08-22 12:30:51 +02:00
Henrik Rydgård
82a6c42e17 DepalettizeCommon -> TextureShaderCommon. Simplifications. 2022-08-22 12:21:20 +02:00
Henrik Rydgård
58a6fd3395 Convert TextureShaderApplier to a member function in DepalCache. 2022-08-22 11:45:52 +02:00
Henrik Rydgård
383adcb870 Simplify depal shader apply code a bit. 2022-08-22 11:31:27 +02:00
Henrik Rydgård
3c307c9857
Merge pull request #15884 from unknownbrackets/texreplace-io-async
Replacement: Read files only within time budget
2022-08-22 11:10:16 +02:00
Unknown W. Brackets
e473eb9f5e Replacement: Read files only within time budget.
When delayed texture load is enabled.  Intended to reduce IO delays on
Android.
2022-08-21 22:07:05 -07:00
Unknown W. Brackets
73c06bb776 Replacement: Be more consistent about base level. 2022-08-21 22:03:16 -07:00
Unknown W. Brackets
89a499b4d2 GLES: Correct preview of mip levels > 0.
Don't need to force level 0 anymore.  Software can show levels hardware
refuses to load.  This is consistent with other backends.
2022-08-21 16:47:46 -07:00
Unknown W. Brackets
afc9a14b37 GPU: Share CLUTs if no extended CLUT.
Oops, this was backwards.  See #15878.
2022-08-21 16:46:51 -07:00
Henrik Rydgård
58adf3ee48
Merge pull request #15859 from hrydgard/depal-depth-565
Allow binding depth as 565 by going through depal
2022-08-21 19:54:02 +02:00
Henrik Rydgård
5f30c88e38
Merge pull request #15873 from unknownbrackets/softgpu-xfer-hazard
softgpu: Flush on transfer to pending tex read
2022-08-21 10:04:27 +02:00
Henrik Rydgård
5ad1301ee8
Merge pull request #15874 from unknownbrackets/softgpu-morph
softgpu: Correct morph weight updates
2022-08-21 10:03:47 +02:00
Henrik Rydgård
a11e7e167b More D3D9 work on depth textures. Something still missing. 2022-08-21 09:58:58 +02:00
Henrik Rydgård
8e7cf596b6 Address more feedback, cleanup scale parameter 2022-08-21 09:58:58 +02:00
Henrik Rydgård
80772dd18e Remove leftover resolutionScale depal config 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
e2707d3ab3 Remove debug code, cleanup 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
f3496d34c8 Texture bind channel fix. Still need to figure out a way to decide to swizzle or not. 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
5a7bddbfa6 Allow binding depth as 565 by going through depal.
This is a partial fix for #6105 (Ratchet & Clank particles visible
through things), but there's still weird glitchiness. There's a pass
during rendering that scrambles the mini depth buffer by using a
triangle mesh. I wonder if it's trying to simulate the swizzle? But it
doesn't really look like it...
2022-08-21 09:58:58 +02:00
Unknown W. Brackets
e14ca87900 softgpu: Correct morph weight updates.
Broke LittleBigPlanet character's face, for example.
2022-08-21 00:27:31 -07:00
Henrik Rydgård
5097a6a8fb
Merge pull request #15872 from unknownbrackets/tex-3d
GPU: Restrict mip CLUT enhancement a bit
2022-08-21 08:45:08 +02:00
Unknown W. Brackets
88e8f95293 softgpu: Flush on transfer to pending tex read.
Potentially could use these for self-render, but so far we should be
detecting that so leaving it alone.
2022-08-20 23:22:21 -07:00
Unknown W. Brackets
3d52b445f1 softgpu: Restrict CLUT to proper size.
We had 15 KB more space than needed before.
2022-08-20 17:36:15 -07:00
Unknown W. Brackets
229c944208 GE Debugger: Include extended CLUT in frame dumps.
Not available on a real PSP, but used in an enhancement (see #15727.)
2022-08-20 17:35:06 -07:00
Unknown W. Brackets
e374ea6b21 GPU: Restrict mip CLUT enhancement a bit.
Can't replicate this behavior on a real PSP.

In case a game sets the separate CLUT flag by accident, ignore except
in a safe case that occurs in Misshitsu no Sacrifice.  See #15727.
2022-08-20 17:32:45 -07:00
Henrik Rydgård
669ce4b99d
Merge pull request #15870 from unknownbrackets/gpu-viewport-state
GPU: Dirty params when converting viewport state for sw transform
2022-08-21 02:22:26 +02:00
Unknown W. Brackets
5d46948eca GPU: Correct depal CLUT texture for 5551/565.
See #15823.
2022-08-20 15:36:13 -07:00
Unknown W. Brackets
b5a4843c1f GPU: Purify ConvertViewportAndScissor().
This makes it harder to misuse.  See #15856.
2022-08-20 14:21:11 -07:00
Unknown W. Brackets
d61619db47 GPU: Dirty params when converting viewport state.
This flag will be false when we convert next time, so parameters won't get
updated as expected.
2022-08-20 14:03:24 -07: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
68480c548d Texture bind channel fix 2022-08-20 08:07:11 +02:00
Henrik Rydgård
295f5f391e More consistent handling of lack of depth texture support. Small log improvement. 2022-08-20 08:05:53 +02:00
Henrik Rydgård
bd3d97b17b Fix bug in framebuffer matching where the wrong format was checked for depth matching. Fixes #15867 2022-08-20 07:59:11 +02:00
Henrik Rydgård
76333f90fe Bias towards the most recently written framebuffer 2022-08-17 23:51:05 +02:00
Henrik Rydgård
fde369332b Remove restrictions on VRAM addresses for depth and color 2022-08-17 23:46:38 +02:00
Henrik Rydgård
31773b42ba Always attempt to match both depth and color 2022-08-17 23:35:36 +02:00
Henrik Rydgård
b5f0e26c24 Pre-reject DXT formats, Misc 2022-08-17 23:31:36 +02:00
Henrik Rydgård
705b34d868 Show seqCount in candidate list 2022-08-17 23:25:07 +02:00
Henrik Rydgård
8251932ae3 Stride fix in matching 2022-08-17 22:58:26 +02:00
Henrik Rydgård
7f169436c0 Framebuffer matching simplification 2022-08-17 22:47:17 +02:00
Henrik Rydgård
bd6f79e473 Fix the raster depth blit again, which I recently broke. 2022-08-17 16:52:49 +02:00
Lubos
1e479fa192 Merge branch 'master' into feature_openxr_6dof 2022-08-17 16:48:05 +02:00
Henrik Rydgård
a7e388168d Typo fix 2022-08-17 14:33:38 +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
Unknown W. Brackets
2eed8c9f19
Merge pull request #15851 from hrydgard/ge-record-open-explorer
After recording a GE dump, open an explorer window pointing at the file
2022-08-16 20:32:17 -07:00
Unknown W. Brackets
f7e4efdbc2
Merge pull request #15852 from hrydgard/more-code-cleanup
Remove DX9 namespace, other code cleanup
2022-08-16 20:16:53 -07:00
Henrik Rydgård
2f3cad9964 After recording a GE dump, open an explorer window pointing at the file 2022-08-16 21:54:36 +02:00
Henrik Rydgård
d0cdb360fd Remove the DX9 namespace, for consistency with the other backends 2022-08-16 21:49:16 +02:00
Henrik Rydgård
1f276fcc20 Vulkan: Restore a minor old forgotten optimization 2022-08-16 21:42:40 +02:00
Henrik Rydgård
cdb4124bc1 More removing redundant stuff 2022-08-16 21:38:09 +02:00
Henrik Rydgård
35a1ca064a Refactor 2D pipeline creation 2022-08-16 19:27:46 +02:00
Henrik Rydgård
dbf16cb106 Minor cleanup in reinterpret 2022-08-16 15:10:48 +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
cbe6a9161a Remove some unused code in FramebufferManagerD3D11.cpp/h 2022-08-16 12:15:40 +02:00
Henrik Rydgård
31fe0fc39e Remove some unnecessary bool returns. 2022-08-16 11:23:34 +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
Henrik Rydgård
913525036b
Merge pull request #15844 from unknownbrackets/ge-playback
GE Debugger: Correct base accounting in playback
2022-08-16 00:04:03 +02:00
Lubos
d34d1e4af9 OpenXR - Ensure PSP aspect ratio for 2D content 2022-08-15 17:41:04 +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
daaf448d22 GE Debugger: Fix crash on 0 count prim. 2022-08-14 16:17:04 -07:00
Unknown W. Brackets
132686513d GE Debugger: Correct base accounting in playback.
On a jump, was forgetting the base value which caused corruption.
2022-08-14 16:14:23 -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
Unknown W. Brackets
cf030c3bce Global: Cleanup some unreferenced warnings. 2022-08-13 12:43:14 -07:00
Lubos
f81779b0de Merge branch 'master' into feature_openxr_6dof 2022-08-13 14:27:29 +02:00
Unknown W. Brackets
482dbb66ea softgpu: Ensure TCs are initialized.
Even if they're not read, we want consistent behavior.
2022-08-12 23:58:57 -07:00
Unknown W. Brackets
49b98de97a softgpu: Correct bad munmap() size. 2022-08-12 23:48:25 -07:00
Henrik Rydgård
ade8b88766 Try to fix shader compilation error on Adreno reported by Lubos 2022-08-12 21:32:32 +02:00
Lubos
3542fbbc38 Merge branch 'master' into feature_openxr_6dof 2022-08-12 10:31:00 +02:00
Lubos
76bea33ef0 OpenXR - Better detecting of 2D menus 2022-08-12 08:41:22 +02:00
Unknown W. Brackets
4467b7830f Debugger: Bump GE dump version to ignore bad flag. 2022-08-11 20:28:56 -07:00
Unknown W. Brackets
c74d69bc2d Debugger: Correct GE frame dump VRAM dirty flag.
Was just wrong before, causing incorrect ignoring in some cases.
2022-08-11 20:25:01 -07:00
Henrik Rydgård
190f503565
Merge pull request #15803 from fp64/cubic-upscaler
Reimplement bicubic upscaling.
2022-08-11 13:43:23 +02:00
Unknown W. Brackets
a321aba68c GPU: Avoid stencil force pass when writing depth.
There's a risk if the stencil test failed, it might cause a depth write
unless it's also masked.  Hunter x Hunter doesn't in this case.
2022-08-10 23:11:16 -07:00
Henrik Rydgård
f80dd088b8
Merge pull request #15822 from unknownbrackets/gpu-stencil
GPU: Write stencil fail to alpha is RGB masked
2022-08-10 14:59:53 +02:00
Unknown W. Brackets
710abcc288 GPU: Write stencil fail to alpha is RGB masked.
See #15813 (Hunter x Hunter) which does this for shadows.
2022-08-09 18:45:49 -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
Lubos
89a0a28c70 Merge branch 'master' into feature_openxr_6dof 2022-08-09 19:35:13 +02:00
Henrik Rydgård
1913930541 Careful with mipmaps on old OpenGL ES. Lost this check in the refactor, made it clearer than before at least.
Fixes Burnout rendering issue mentioned in #15818
2022-08-09 17:26:39 +02:00
Henrik Rydgård
852c395fb7 Texcoord attrs must be called a_texcoord0, this should be fixed. Oh well.
Also small fix for depth in float-depal.
2022-08-09 16:07:02 +02:00
Henrik Rydgård
83fd8a2fd8 Convert depal shaders to use the ShaderWriter. Add tests for depal shaders. 2022-08-09 15:32:27 +02:00
Henrik Rydgård
9bd4201c83 Cleanup 2022-08-09 10:47:54 +02:00
Lubos
5c3ff4f357 OpenXR - Detect 3D content better 2022-08-08 18:43:16 +02:00
Henrik Rydgård
9a678406b9 Remove BGRA color swap in depal for D3D, no longer needed (and breaks Simpsons) 2022-08-08 14:10:55 +02:00
Lubos
c00fea1b22 Merge branch 'master' into feature_openxr_6dof 2022-08-07 20:33:14 +02:00
Lubos
c7e321b866 OpenXR - Detecting UI mode improved 2022-08-07 20:32:34 +02:00
fp64
25d44ad65e
Change indentation to tabs. 2022-08-07 12:41:31 -04:00
Unknown W. Brackets
e589b4506b GLES: Correct alpha check for depal framebuffers. 2022-08-07 07:43:10 -07:00
Henrik Rydgård
d61909ca91 More framebuffer blit fixes. 2022-08-07 12:02:06 +02:00
Henrik Rydgård
6f1f482432 Make GLQueueRunner/RenderManager aware of device caps, use it to check for NPOT and some other stuff 2022-08-07 11:15:23 +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
fp64
5d9134087e
Reimplement bicubic upscaling. 2022-08-07 04:54:40 -04:00
Henrik Rydgård
1fb04a7d33
Merge pull request #15798 from unknownbrackets/gpu-minor
Cleanup some stencil upload things, clarify alpha skipping
2022-08-07 08:36:02 +02:00
Unknown W. Brackets
b87854bc66 GLES: Correct semantic name for Draw2D.
Draw hardcodes the names.  Fixes #15799.
2022-08-06 22:13:03 -07: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
Unknown W. Brackets
20c2ec1392 GPU: Skip alpha stencil upload when safe.
Otherwise, let's not do things that give different behavior at 1x or are
inconsistent.
2022-08-06 21:12:59 -07:00
Unknown W. Brackets
e6ea07bc9d GPU: Cleanup remnants of GLES-only stencil upload. 2022-08-06 20:33:34 -07:00
Henrik Rydgård
8478a8c86d
Merge pull request #15789 from hrydgard/unify-texture-depal
Unify the framebuffer depal process
2022-08-06 18:49:37 +02: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
5987c355d3 D3D9: Fix a lot of stuff 2022-08-06 18:27:04 +02:00
Henrik Rydgård
ded8ba8806 More cleanup, fixes. 2022-08-06 18:27:04 +02:00
Henrik Rydgård
9a5893ce6e More cleanup 2022-08-06 18:27:04 +02:00
Henrik Rydgård
de10c1fddd Buildfixes 2022-08-06 18:27:04 +02:00
Henrik Rydgård
92a3d45340 Lock out shaderDepal from D3D for now, will implement later. 2022-08-06 18:27:03 +02:00
Henrik Rydgård
81c36578ca Feature detection fixes 2022-08-06 18:27:03 +02:00
Henrik Rydgård
4e3c258140 Delete all the duplicate implementations of ApplyTextureFramebuffer 2022-08-06 18:27:03 +02:00
Henrik Rydgård
b5597d1013 Remove Vulkan2D 2022-08-06 18:27:03 +02:00
Henrik Rydgård
45def772ee Move the depal cache instance ownership to TextureCacheCommon 2022-08-06 18:27:03 +02:00
Henrik Rydgård
87b128ecaf Compiles on Vulkan, but doesn't yet work. 2022-08-06 18:27:03 +02:00
Henrik Rydgård
7085861aad Switch over D3D9 as well. Buggy, will debug after unification 2022-08-06 18:27:03 +02:00
Henrik Rydgård
e345a6ba3c Works with D3D11, except the depth texturing case 2022-08-06 18:27:03 +02:00
Henrik Rydgård
2fa9b0d0c7 Simplify 2022-08-06 18:27:03 +02:00
Henrik Rydgård
8d23c5ecfb Fixy fix 2022-08-06 18:27:03 +02:00
Henrik Rydgård
da65af832a D3D11 prep 2022-08-06 18:27:03 +02:00
Henrik Rydgård
7800bfdf72 Move the TextureShaderApplier out to DepalettizeCommon 2022-08-06 18:27:03 +02:00
Henrik Rydgård
ab560d9224 Move more stuff to Common 2022-08-06 18:27:03 +02:00
Henrik Rydgård
4e89174b85 OpenGL: Fix shader depal too. 2022-08-06 18:27:03 +02:00
Henrik Rydgård
37555fd442 Move to Common 2022-08-06 18:27:02 +02:00
Henrik Rydgård
d3070005a2 Mostly works for OpenGL. 2022-08-06 18:27:02 +02:00
Henrik Rydgård
8aebf0dca4 Port the OpenGL depal path to thin3d 2022-08-06 18:27:02 +02:00
Henrik Rydgård
5f230ee998 Fix some compiler warnings 2022-08-06 18:19:27 +02:00
Henrik Rydgård
fafe727870 Fix corrupted colors when using software upscaling with OpenGL.
Fixes #15779
2022-08-06 18:04:45 +02:00
Henrik Rydgård
08e2d951b4 State handling reordering in D3D11 and D3D9 backends. 2022-08-05 23:07:01 +02:00
Lubos
cc3981a328 OpenXR - 72Hz support added 2022-08-05 15:14:21 +02:00
Lubos
5f377f82eb Merge branch 'master' into feature_openxr_6dof 2022-08-05 13:49:42 +02:00
Lubos
92d3ed6ee3 OpenXR - HUD is enabled based on gstate 2022-08-05 11:31:33 +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
Henrik Rydgård
1ab9293cb3 Convert FramebufferBlit from the GL backend to use thin3d 2022-08-03 22:22:51 +02:00
Henrik Rydgård
64a8a3f7d3 D3D11: Remove more custom drawing 2022-08-03 22:22:51 +02:00
Henrik Rydgård
d5a0249678 Fix upscaling in Vulkan. Fixes #15779 2022-08-03 22:22:24 +02:00
Lubos
3578656b8b OpenXR - Introduce VR tweaks 2022-08-03 18:52:55 +02:00
Henrik Rydgård
0f9bf47429 Reimplement filtering in DrawActiveTexture 2022-08-03 14:12:55 +02:00
Henrik Rydgård
192e331b11 Delete the OpenGL implementation of DrawActiveTexture. 2022-08-03 14:12:55 +02:00
Henrik Rydgård
6ca47076e7 Delete the Vulkan implementation of DrawActiveTexture, fixups to shader gen 2022-08-03 14:12:55 +02:00
Henrik Rydgård
1fe2bced54 Delete the D3D9 impl of DrawActiveTexture 2022-08-03 14:12:55 +02:00
Henrik Rydgård
1d3075566f Move to common (todo: merge with above) 2022-08-03 14:12:55 +02:00
Henrik Rydgård
d55c4a3456 Convert the D3D11 DrawActiveTexture to thin3d 2022-08-03 14:12:55 +02:00
Henrik Rydgård
59b3df0643 Draw2D 2022-08-03 14:12:55 +02:00
Henrik Rydgård
3e1ccf1311 Need a separate cap bit for stencil blits to prevent misuse on D3D9 2022-08-03 13:40:21 +02:00
Henrik Rydgård
41e327a66b Cleanup and testfixes 2022-08-03 13:34:59 +02:00
Henrik Rydgård
9963cd55f0 Rebind the framebuffer only if we're in the blit path. 2022-08-03 13:33:54 +02:00
Henrik Rydgård
d26e637bb8 Bufferless path for D3D11/Vulkan
Though we still bind the buffer for simplicity..
2022-08-03 13:33:53 +02:00
Henrik Rydgård
269bff9c0b Get D3D shaders to build (though not working correctly) 2022-08-03 13:31:15 +02:00
Henrik Rydgård
787de81437 Switch to ShaderWriter. Works in OpenGL 2022-08-03 13:31:15 +02:00
Henrik Rydgård
9bead443c3 Unify stencil buffer upload using Draw. Only OpenGL tested yet (shaders need adaptation). 2022-08-03 13:31:13 +02:00
Lubos
cb6448ff2d Merge branch 'master' into feature_openxr_6dof 2022-08-02 21:01:05 +02:00
Lubos
4814bed7df OpenXR - HUD support added 2022-08-02 20:58:16 +02:00
Henrik Rydgård
770cb49f94 GLES: FramebufferBlit: Don't blit if the target is the current framebuffer. 2022-08-02 14:57:20 +02:00