Commit Graph

49 Commits

Author SHA1 Message Date
Henrik Rydgard
01a1438dce Improve depth buffering in D3D by computing a depth-flipped proj matrix but only when needed. 2014-09-08 23:10:23 +02:00
Unknown W. Brackets
1f51fe7843 d3d: Avoid rewriting textures, just swizzle.
Luckily A is in the same place and the same width, so we can do this for
all but framebuffers easily.

Technically we could do it in OpenGL as well.

Small (1-2%) performance improvement in FF2.
2014-08-28 01:20:21 -07:00
Henrik Rydgard
1d7642fa48 Remove most mentions of the "_XBOX" define 2014-08-24 14:21:35 +02:00
Unknown W. Brackets
030b562eb9 Support render-to-offset within a framebuffer.
Fixes #6324.
2014-06-14 17:08:41 -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
acab898be0 Keep track of x/y offset for render-to-tex.
Fixes intro in Valkyrie Profile now that we're wrapping correctly.
2014-06-08 14:27:05 -07:00
Unknown W. Brackets
cc841bbe4c Apply tex wrap/clamp in shader for render-to-tex.
Fixes graphical artifacts in Wild Arms XF (which depends on how you get
there, because it's based on the size of the framebuffer.)
2014-06-07 13:13:58 -07:00
Unknown W. Brackets
f660c04983 Optimize double alpha blending for 1/0 textures.
If the blend is 2*a / 1-a, and the alpha is either 1 or 0, we can still
use color doubling instead.  Fixes #3379 (Persona 2.)
2014-05-11 14:17:19 -07:00
Unknown W. Brackets
748ce6a753 Fix typo breaking older savestates. 2014-04-21 22:40:50 -07:00
Henrik Rydgard
16f4622ac7 Remove cached light variables to reduce work when parsing DLs.
Also removes some duplication between GL and the inactive D3D code.
2014-04-21 12:51:19 +02:00
Unknown W. Brackets
58038c05fc Simplify gstate_c savestate code a bit.
So it's not as awkward to modify.
2014-04-13 15:16:51 -07:00
Unknown W. Brackets
4c1c694d4b Use flags to avoid hashing textures when unchanged.
If only parameters change (like wrapping or clut, etc.) we don't need to
rehash the data - we know it hasn't changed.

Should reduce the distance between lazy texture hashing on and off.
2014-04-13 14:22:39 -07:00
Ced2911
2ab34b5704 [gpu] Endian fix 2014-01-26 14:29:30 -08:00
Unknown W. Brackets
435115441d Reinitialize the GE on sceKernelLoadExec().
Mostly, reset the lists and draw completion, etc.

May be required for Capcom Classic Collection Reloaded to work.
2013-11-28 15:35:12 -08:00
Henrik Rydgard
8c562a615f Bone matrix loading speedup. Bit of a hack but seems reliable enough. 2013-11-14 14:02:31 +01:00
Henrik Rydgard
7e67476b00 Simple unoptimized software skinning.
Does not take advantage of the possible reduction in state changes yet.
2013-11-13 18:10:57 +01:00
Sacha
aad70d8912 Symbian: Support software GPU. It seems to compile properly now. May allow Nokia 500 to run PPSSPP (albeit very slowly). 2013-11-12 16:20:52 +10:00
Unknown W. Brackets
3787471791 Add some initial methods to GPUDebugInterface. 2013-09-22 10:22:33 -07:00
Unknown W. Brackets
4078dcd917 Support save/restore of context on list run/finish. 2013-09-20 09:51:44 -07:00
Unknown W. Brackets
bb2e51160b Don't default lighting on / matrices filled.
Seems like everything starts out at 0.
2013-09-20 00:34:18 -07:00
Unknown W. Brackets
7906de26f7 Try to match especially the size of ge contexts.
But also some of the actual data, most of it matches like this.
2013-09-20 00:33:32 -07:00
Ced2911
5c4ed26442 Make the dx9 renderer working in headless mode 2013-09-16 09:42:30 +02:00
Unknown W. Brackets
5617f07462 Fix dx9 so it builds on Windows (DOES NOT WORK.) 2013-09-15 23:22:10 -07:00
Unknown W. Brackets
f55b6a0dbc Put the DirectX9 stuff into a namespace.
This makes it almost build on Windows, but not quite.  Some required files
excluded from build, still.
2013-09-15 08:56:12 -07:00
Ced2911
d2d48fe262 fix 2013-09-12 10:56:20 +02:00