Commit graph

59 commits

Author SHA1 Message Date
Henrik Rydgård
a71fbccfbc Warning fixes for new LLVM on mac (warns on inconsistent usage of override) 2015-09-17 20:29:37 +02:00
Henrik Rydgard
d822cbf60b Move fbo.cpp/h from native into PPSSPP 2015-09-06 13:13:37 +02:00
Henrik Rydgard
72ae497350 Remove glstate usage except in the GPU implementation. Prepare for moving it into PPSSPP. 2015-09-06 12:42:15 +02:00
Henrik Rydgard
f524049277 Move more GPU feature checks upfront. Re-check when exiting settings menu. 2015-09-05 21:23:58 +02:00
Henrik Rydgard
a71be3f75f Start moving GPU feature compatibility decisions to startup
(and a single, cache-friendly flag field)
2015-09-05 19:58:47 +02:00
Henrik Rydgard
7e3292d275 Minor optimization 2015-08-26 18:46:55 +02:00
Henrik Rydgard
d7f4c47c22 Refactor: Even more getting rid of gstate access in the framebuffer manager. 2015-08-05 12:13:14 +02:00
Henrik Rydgård
6fee2b456c GPU classes: Replace "virtual" with "override" for free function type checking 2015-07-25 14:23:02 +02:00
Unknown W. Brackets
6b26e1a591 Read pending vertex data before exiting gpu loop.
Fixes save pictures in Crimson Gem Saga.
2015-03-14 18:11:24 -07: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
962d8c5224 dx9: Take screenshots (fixes #7197.) 2014-12-20 08:31:56 -08:00
Henrik Rydgard
9b587bb144 Make the D3D backend cmd processing work more similar to the GL backend 2014-09-13 12:11:34 +02:00
Unknown W. Brackets
94c1271761 Add an experiment with using a texture for tests.
Using an option for now so it's easy to test, if it works well we can
maybe remove the option.
2014-09-07 10:04:57 -07:00
Unknown W. Brackets
95f4341838 Allow changing prescale uv at runtime. 2014-06-28 21:51:25 -07:00
Unknown W. Brackets
1c3b60a8ee Allow changing software skinning at runtime. 2014-06-28 21:46:43 -07: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
e762689ea8 Update vsync on resize, and before first FBO.
May take care of #4440.
2014-06-15 15:19:49 -07:00
Unknown W. Brackets
eaf3288304 Add debug interface for non-L0 texture preview. 2014-06-15 09:30:37 -07:00
Unknown W. Brackets
1d9f7b04fc Implement in-shader blending on gles2 / gl2.
I'm sure it'll be slow, though...
2014-06-13 23:42:59 -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
Henrik Rydgard
8fba7fa98e Initial work on depalettization. 2014-05-27 22:07:24 +02:00
Henrik Rydgård
8d84c912eb Merge pull request #6070 from unknownbrackets/gpu-blend
Apply unsupported blending modes in the shader
2014-05-27 17:45:33 +02:00
Unknown W. Brackets
8dcc09c9e1 Use a separate func for gpu memset(). 2014-05-27 07:50:01 -07:00
Unknown W. Brackets
4b978ed6f9 Apply unsupported blending modes in the shader.
This handles unsupported fixed color combinations, alpha doubling, etc.
Where possible, tries to avoid it - it means using a blit (without the
framebuffer fetch extension), which can slow things down a lot with tons
of drawcalls.
2014-05-27 01:45:17 -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
424d93e9a9 Separate out the fog color/coef executes. 2014-04-21 22:56:54 -07:00
Unknown W. Brackets
38b92e48ec Fix uniform dirtying on colortest mask. 2014-04-21 22:54:17 -07:00
Unknown W. Brackets
1bbd3d04af Move the light params to separate funcs. 2014-04-21 22:47:44 -07:00
raven02
abc5c86339 Split out texture level 2014-04-19 06:45:17 +08:00
Unknown W. Brackets
1e61fd7a02 Split out the clutformat cmd as well. 2014-04-17 22:57:02 -07:00
Unknown W. Brackets
90365943ff Split out the bounding box and stencil test cmds. 2014-04-17 22:54:23 -07:00
Unknown W. Brackets
b953ff8f33 Split out viewport type commands. 2014-04-17 22:49:09 -07:00
Unknown W. Brackets
5ed851204c Split out a few more common cmds. 2014-04-17 22:41:37 -07:00
Unknown W. Brackets
5ba924225e Move out texformat as well. 2014-04-17 08:29:44 -07:00
Unknown W. Brackets
7d34c20418 Split out the texscale/offset cmds. 2014-04-17 08:26:38 -07:00
Unknown W. Brackets
e8f42f069e Split out some texture and testing cmds. 2014-04-17 08:18:43 -07:00
Unknown W. Brackets
fbe28dbeef Move spline and bezier as well to separate funcs. 2014-04-17 08:09:44 -07:00
Unknown W. Brackets
12716afce2 Move out block transfer too, common in GoW. 2014-04-17 08:05:16 -07:00
Unknown W. Brackets
130c11c518 Move matrix loads to separate op cmds. 2014-04-17 08:00:01 -07:00
Unknown W. Brackets
49738a4d9f Keep flags and func together.
Seems not to make a big difference, though.
2014-04-17 01:36:24 -07:00
Unknown W. Brackets
c90f3a3e80 Split out more of the top GE cmd funcs. 2014-04-17 01:18:53 -07:00
Unknown W. Brackets
9851400681 Move a few GE cmds to separate funcs.
2% improvement in God Eater 2.
2014-04-17 01:18:52 -07:00
Unknown W. Brackets
e06c135be4 Allow individual cmd funcs to be called.
Rather than a single one, ExecuteOpInternal().  This allows less "huge
switch" code organization, and will (once separated) also improve speed.
2014-04-17 01:18:51 -07:00
Unknown W. Brackets
a4327702f1 Reduce some includes under GPU/. 2014-03-29 16:51:38 -07:00
Unknown W. Brackets
0a880b09ad Allow fast bone mtx loads w/o software skinning. 2014-03-02 18:12:40 -08: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