Commit graph

1274 commits

Author SHA1 Message Date
Henrik Rydgård
48ba304a4a Minor logging improvements 2020-08-10 20:17:01 +02:00
Henrik Rydgård
5ec2da0f2d Move Section out of IniFile so it can be forward declared. Unlocked further improvements to build speed. 2020-08-10 15:53:52 +02:00
Henrik Rydgård
6b6ecf4427
Merge pull request #13267 from unknownbrackets/headers
Reorganize DoState headers and cut back on common header includes
2020-08-10 13:45:57 +02:00
Unknown W. Brackets
4b4e3432cd SaveState: Split Do() into a separate header. 2020-08-10 08:03:41 +00:00
Henrik Rydgård
0aa2ceb372 Address feedback 2020-08-10 09:16:28 +02:00
Henrik Rydgård
ba0d04a142 Vulkan: Implement depth texturing through depal. 2020-08-09 20:31:04 +02:00
Henrik Rydgård
cf122e9333 Vulkan/generic: Initial prep for depth texturing 2020-08-09 19:47:15 +02:00
Henrik Rydgård
e6dfb55d3d Optimize value conversion in (unused) depth readback.
This also exposes factors we can feed into shaders to do the conversion
on the GPU.
2020-08-09 10:47:01 +02:00
Henrik Rydgård
fbf6008a03 Set debug names for more framebuffers and textures 2020-08-09 09:36:54 +02:00
Henrik Rydgård
c24dad2ac4 Logging improvement 2020-08-06 14:33:29 +02:00
Henrik Rydgård
8e1caadb48 Remove some unnecessary reporting. 2020-08-06 10:20:27 +02:00
Henrik Rydgård
ff248ff94f Fix #13251 for D3D11. The remaining issue in #7124 should be fixed. 2020-08-06 09:35:26 +02:00
Henrik Rydgård
fd3a9d4202 Expand the viewport to cover the scissor region, if it doesn't. Fixes #4845 (bloom in Dante's Inferno). 2020-08-05 19:19:30 +02:00
Henrik Rydgård
1b2d4dd75d Viewport state conversion: Move the pixel scaling to after the overage clipping. 2020-08-05 19:04:12 +02:00
Henrik Rydgård
eadd3c5785 Remove the LARGE_VIEWPORTS separate path. The fewer paths the better, all need to work anyway.
Required fixing a bug in ShaderUniforms.cpp (used by D3D11 and Vulkan,
the two backends that previously exposed LARGE_VIEWPORTS).
2020-08-05 19:03:08 +02:00
Henrik Rydgård
09e300e646 Be a little more aggressive discarding non matching framebuffers when texturing. Enable create framebuffer from copy, fixing #12345 2020-08-04 14:51:37 +02:00
Henrik Rydgård
58ef0c8e80 Texture from framebuffer: Logging improvements 2020-08-04 14:45:14 +02:00
Henrik Rydgård
49efaaef59 Clarify, but don't yet remove, a perf hack for ES devices. Remove a unused sync parameter from readbacks. 2020-08-04 11:15:43 +02:00
Henrik Rydgård
d57edfbdac Rename FramebufferCommon.cpp/h to FramebufferManagerCommon.cpp/h for consistency 2020-08-03 23:17:22 +02:00
Henrik Rydgård
60683cf4a4
Merge pull request #13238 from hrydgard/minor-logging-cleanup
Logging and error handling improvements around save states
2020-08-02 19:05:58 +02:00
Henrik Rydgård
6aa3681f7c Minor logging improvements 2020-08-02 15:41:00 +02:00
Unknown W. Brackets
d99e67a061 Vulkan: Allow custom texture upscaling shaders.
Let's not just hardcode.
2020-08-01 22:00:04 -07:00
Unknown W. Brackets
5ff75f4ca8 UI: Add setting for texture upload shader. 2020-08-01 21:28:18 -07:00
Henrik Rydgård
c5e0b799d9 Remove category from _assert_msg_ functions. We don't filter these by category anyway.
Fixes the inconsistency where we _assert_ didn't take a category but
_assert_msg_ did.
2020-07-19 20:33:25 +02:00
Henrik Rydgård
82bc6f6cc5 Windows ARM fix, cleanup 2020-07-14 13:47:25 +02:00
Henrik Rydgård
131a1eedfb Vulkan: Make sure textures/samplers are unbound at the end of PresentationCommon::CopyToOutput.
Validation caught an issue where old stuff lingered in sampler 1 and texture 1.

Bug probably introduced in #12921, but could also be others.
2020-07-13 23:32:37 +02:00
Henrik Rydgård
bb6219e402
Merge pull request #12921 from unknownbrackets/postshader
Use less FBOs for chained post-processing shaders
2020-07-13 18:52:53 +02:00
Henrik Rydgård
6009bf7b74
Merge pull request #12952 from unknownbrackets/vulkan-safesize
Vulkan: Match safe size behavior on all backends
2020-07-13 15:59:09 +02:00
Henrik Rydgård
b58ca8af12
Merge pull request #12945 from unknownbrackets/io-timing
Make file open timing a bit more accurate
2020-07-13 13:37:53 +02:00
Henrik Rydgård
a722dfe0fb Formalize "core excpetions" as a concept 2020-07-12 15:25:21 +02:00
Henrik Rydgård
73046239e3 Android: Add option to ignore camera notches when sizing the display.
This is generally what you want, at least on phones with small notches.

Not sure about the most intuitive polarity and name of the setting.. bit
of a shame to create another setting with a negation. But most people
should probably ignore this.
2020-07-05 22:46:25 +02:00
Rémi Verschelde
e479bf7f7b TextureDecoder: Fix misuse of NEON on all armv7
`ppsspp_config.h` properly defines `PPSSPP_ARCH(ARM_NEON)` already for
arm64v8 and armv7+NEON, so we use that instead of using NEON instructions
on all armv7.
2020-06-27 17:29:24 +02:00
Henrik Rydgård
1349b83d54 Android: Fix odd screen centering with insets. 2020-06-14 19:58:54 +02:00
Unknown W. Brackets
cdb7e2fc1e GPU: Add sampler1 for postshader orig source. 2020-06-12 12:35:37 -07:00
Unknown W. Brackets
dcf4498f82 GPU: Alternate FBOs for chained postshaders.
If you apply 4 in a row at the same resolution, we only need two actual
FBOs.  This will use less VRAM.
2020-06-12 12:35:36 -07:00
Unknown W. Brackets
9ef521d945 GPU: Avoid immediate postshader FBO recreate.
Before, we created things at the wrong size, then recreated at the right.
Now we just start at the correct size once.
2020-06-12 12:35:35 -07:00
Henrik Rydgård
737688a22a Annotate calls to RebindFramebuffer with their cause. 2020-06-02 09:51:38 +02:00
Henrik Rydgård
4fa6c7fd7f Typo fix. Will hopefully help #12992. 2020-06-01 16:19:17 +02:00
Henrik Rydgård
c8d48a8777 Handle insets correctly for the in-game final screen blit.
Should help #12982 in case of phones with inset cameras.
2020-05-31 20:14:40 +02:00
Henrik Rydgård
e559fc022f Minor refactor in PresentationCommon (combine loose coordinates to a struct) 2020-05-31 19:45:28 +02:00
Henrik Rydgård
370678c498 Do a similar thing for D3D (let the backend handle the dirtying). 2020-05-24 20:57:59 +02:00
Henrik Rydgård
bebf649705 OpenGL/Vulkan: Rework the contract around dynamic state. Removes some ugly dirtying from the GL render manager. 2020-05-24 20:27:58 +02:00
Henrik Rydgård
4f7e5df29a Remove all those "GLES reset the blend state" comments. 2020-05-24 19:21:46 +02:00
Henrik Rydgård
cba0d16583 Vulkan: After binding a new framebuffer, we always need to dirty the viewport/scissor state.
So that viewport and scissor commands get written to the new render pass.

Temporary solution until I can figure out how to abstract this away
in the RenderManager without losing perf.
2020-05-24 17:59:52 +02:00
Henrik Rydgård
defa8aa480 DarkStalkers: Handle the "normal" screen stretch too, not just "wide", to avoid a surprising performance drop. 2020-05-24 16:53:44 +02:00
Unknown W. Brackets
1432cc9431 GPU: Try a bit harder to determine safe size. 2020-05-23 00:54:22 -07:00
Unknown W. Brackets
ea1f0a1195 Vulkan: Match safe size behavior on all backends.
Before, we would not mark a safe size for some Vulkan clears where depth
was not cleared, deviating from other backends.  We also never detected
that on PowerVR.  This makes things more consistent.
2020-05-23 00:25:39 -07:00
Unknown W. Brackets
3a1bc6a86b GPU: Never set safe size larger than the buffer.
Maybe this indicates the buffer size is wrong, but a safe size larger than
the buffer will make us try to download outside the buffer and lose the
Vulkan device.
2020-05-23 00:12:22 -07:00
Unknown W. Brackets
49abe9ed6c Io: Open sce_lbn references and whole ISO faster. 2020-05-21 18:58:24 -07:00
Henrik Rydgård
1dec772145
Merge pull request #12944 from unknownbrackets/gpu-minor
GPU: Ignore viewport for scissor of 481
2020-05-21 22:47:42 +02:00