Commit Graph

118 Commits

Author SHA1 Message Date
Henrik Rydgård
6d9bb1b29e Move post-processing settings to DisplayLayoutScreen 2022-11-22 23:29:50 +01:00
Henrik Rydgård
cbfa4bfc8e Centralize ClearCacheNextFrame 2022-11-21 18:13:13 +01:00
Henrik Rydgård
c3604428b9 Only check for display resized in emuscreen-under-pause-screen, not the other changes. 2022-11-21 17:59:56 +01:00
Henrik Rydgård
d73196c7d6 Split up the GPU config change notifications 2022-11-21 15:14:20 +01:00
Henrik Rydgård
37ec31dedd Fix resizing issue. Took some refactoring. 2022-11-20 12:57:32 +01:00
Unknown W. Brackets
55d5dc3834 GPU: Rename readback and buffer write operations.
Avoid download/upload and pack, which don't have clear directions.
2022-10-09 13:49:41 -07:00
Unknown W. Brackets
e7e7528fbc GPU: Consider depth buffers in block transfer.
Right now, only with an explicit flag (not yet used.)
2022-10-09 00:50:45 -07:00
Unknown W. Brackets
a1efed31b9 GPU: Use flags to fix triggered upload/download.
No longer using mirror hacks.
2022-10-03 20:17:25 -07:00
Unknown W. Brackets
24999e792a Ge: Report and save Edram translation value.
See #16126 for some details on its usage and effects.
2022-10-01 23:18:42 -07:00
Unknown W. Brackets
6b20c0318d softgpu: Correct matrix value update wrapping.
The values read back when saving a context or getting matrix data are set
differently than the actual values used for rendering.

This implements the wrapping and bleeding between matrices within softgpu,
but leaves hardware rendering to only use the rendering registers for
speed.
2022-09-27 22:29:55 -07:00
Unknown W. Brackets
95d2083f04 Ge: Move matrix reading into GPU.
Let's keep managing its state / registers internal.
2022-09-27 22:23:02 -07:00
Unknown W. Brackets
f740fcdbe7 GPU: Minor cleanup of unnecessary virtual. 2022-09-18 06:16:25 -07:00
Henrik Rydgård
9f2447c0b4 Assorted minor cleanup 2022-08-16 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
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
ec3bfe08ae GPU: Force texture invalidation for ZHP minimap.
See #14069, our texture hash misses this change.
2021-02-07 09:02:28 -08:00
Unknown W. Brackets
cebcfb1bbd GPU: Use old frame when presenting a skip.
If we flip using a skipped frame, we may show an even older frame causing
weird flickering.
2020-03-01 13:55:28 -08:00
Unknown W. Brackets
40ca49d0e3 GPU: Cancel shader preload on shutdown/lost.
Otherwise, we could've ended up with shaders loading after or during the
lost event, and dense hash map corruption.
2018-10-30 20:32:12 -07:00
Unknown W. Brackets
28cabd578a Qt Debugger: Remove display list debugger.
Being replaced with WebSocket based debugger.  Was disabled and not
working anyway, and hardcoded some GL so a barrier to Vulkan.
2018-06-06 05:58:10 -07:00
Unknown W. Brackets
4b8d8c875d Qt: Remove old texture debug API.
No one's testing it and it's not the best way.  We have a better
implemented API and should use it instead.
2018-02-19 09:09:35 -08:00
Unknown W. Brackets
60c4ac58f0 System: Allow GPU to have delayed loading. 2017-12-03 11:29:07 -08:00
Henrik Rydgård
9e35144b96 Remove/deprecate GPU tick sync 2017-11-05 23:21:53 +01:00
Henrik Rydgård
bb68906d88 Delete ProcessEvent and the GPUEvent enum 2017-11-05 23:21:51 +01:00
Henrik Rydgård
26e52ca5e8 Get rid of a bunch of sync stuff that's no longer needed. 2017-11-05 23:21:49 +01:00
Henrik Rydgård
6a1fa728d8 Remove Globals.h 2017-08-31 17:15:22 +02:00
Unknown W. Brackets
ea2c79d789 GPU: Add a debug method to grab list tick wait.
So that we can wait until then when doing test drawing.
2017-06-04 10:38:49 -07:00
Henrik Rydgard
55aa879216 A lot of buildfixes 2017-02-06 16:16:43 +01:00
Unknown W. Brackets
92d930887f Android: Add both a lost and restore phase.
Lost = delete, restore = create.  Let's stick to never overlapping.

May help #8912.
2016-09-10 21:58:42 -07:00
Henrik Rydgard
5ef608fa50 GPU stats: Have each backend format its own string. 2016-03-31 10:17:02 +02:00
Unknown W. Brackets
f60aef2e16 Add a more specific interface for video frames.
Since we know more about them.  No functional change yet.
2016-01-17 12:57:26 -08:00
Henrik Rydgard
94c91e199a Minor GPU interface change needed for a WIP backend 2016-01-06 23:53:21 +01:00
Henrik Rydgard
7f4e473e8c Add new shader viewing tool 2015-10-14 18:10:21 +02:00
Henrik Rydgard
652e4bca76 Fix for a struct padding error affecting Android-x86, making it produce savestates that were not compatible with the other platforms. 2015-10-11 14:38:26 +02:00
Henrik Rydgard
2430c283a5 More GPU cleaning, removing uses of GPUState.h where not needed.
Want to get rid of direct accesses to GPUState in modules that may be reused in
my future next-gen backends, that will reformat display lists into command lists that will
then be optimized and executed, out of sync with the real GPUState.

Candidate modules that may be reused in full are Framebuffer and Depal, possibly TextureCache to some degree.
2015-07-29 12:37:49 +02:00
Henrik Rydgard
cde585a29a Include dependency cleanup 2015-07-29 11:48:20 +02:00
Unknown W. Brackets
795088001c Avoid passing a GPUstate by value.
Only used by Qt GE debugger thing anyway.
2015-01-17 18:21:04 -08:00
Unknown W. Brackets
0a6a70f53f Allow switching cpu thread on/off ingame. 2014-12-20 17:39:42 -08:00
sum2012
5ac70026c7 Fix save status
Rename u32_le stackAddr to u32
2014-08-17 16:52:06 +08:00
JimLee168
8099281928 check for duplicated stack addresses
Based on https://code.google.com/p/jpcsp/source/detail?r=3569

Fix WWE SmackDown! vs. RAW 2006
2014-08-13 21:28:22 +08:00
Unknown W. Brackets
d2d7d6e34b Destroy all FBOs/textures upon sceKernelLoadExec().
It can confuse our heuristics about size, attachment, memcpy, etc.
2014-06-28 12:29:09 -07:00
Unknown W. Brackets
6d104edb5d Make sure not to leak any enabled vertex arrays.
When returning to EmuScreen, we need to reset any enabled vertex arrays or
we could crash in EmuScreen.  Also, when starting a frame / dirting the
shader, make sure also to toggle the vertex arrays.
2014-06-22 21:42:29 -07:00
Unknown W. Brackets
adee76cd62 Add a matching PerformMemoryUpload().
Just so we have both Download and Upload to use later.
2014-06-10 00:45:03 -07:00
Unknown W. Brackets
089ee41d9c Implement a very basic stencil upload.
This is not fast or efficient, but works.
2014-05-31 21:48:09 -07:00
Unknown W. Brackets
1433b98c46 Clean up the framebuffer force downloads. 2014-05-31 10:03:03 -07:00
Unknown W. Brackets
8dcc09c9e1 Use a separate func for gpu memset(). 2014-05-27 07:50:01 -07:00
Unknown W. Brackets
e4dc702d68 Schedule the FBO blit during multithreading.
This was it's properly ordered with draws, and it runs on the right GL
context.
2014-05-25 22:08:15 -07:00
Unknown W. Brackets
8275f613ce UpdateMemory() now returns whether to skip the cpy.
This way it can do it itself as necessary in the right order.
2014-05-25 21:48:41 -07:00
Unknown W. Brackets
a4327702f1 Reduce some includes under GPU/. 2014-03-29 16:51:38 -07:00
Henrik Rydgård
e5e17fbc6e More include cleanup. Hoping for very slightly faster compile times.. 2013-12-30 10:49:05 +01:00
Unknown W. Brackets
d35717f5a8 Also report the vertex decoder jit to verysleepy.
Can use the same methods to support other platforms.
2013-11-30 19:20:22 -08:00