Commit Graph
2291 Commits
Author SHA1 Message Date
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 286416af9f Don't even execute FF, it does nothing.
And it happens quite a lot in GoW, interestingly...
2014-04-17 08:05:32 -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
raven02 ffdba45b4b Flush GE_CMD_TEXLEVEL 2014-04-17 19:48:22 +08: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 256e98b841 Add the common funcs to the direct exec calls. 2014-04-17 01:18:52 -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 b2f12daba9 Don't reset OFFSETADDR, changes offsetAddr. 2014-04-17 01:18:51 -07:00
Henrik Rydgård cf3117dd71 Merge pull request #5876 from raven02/patch-3
Fix wrong stretch in Wildarm XF (non-buffered mode)
2014-04-16 10:40:23 +02:00
Henrik Rydgård 45246ad9d3 Merge pull request #5891 from raven02/kill-alpha
Remove 'DisableAlphaTest' option
2014-04-15 22:00:18 +02:00
raven02 d2ce635bbf Remove option 2014-04-16 03:57:57 +08:00
Henrik Rydgård d6df5e77df Merge pull request #5875 from raven02/patch-2
Add #extension GL_EXT_shader_framebuffer_fetch : require
2014-04-15 15:59:20 +02:00
Unknown W. Brackets 089fea7185 Ignore uncached/kernel bits in texture cache.
Although I suppose we could respect uncached and never cache...

Possibly #5879.
2014-04-14 07:58:00 -07:00
Unknown W. Brackets a411ec6d08 Don't use BGRA for upscaled textures.
Since they aren't color swapped.  Fixes #5881.
2014-04-14 07:34:04 -07:00
raven02 cd024e88e8 Add #extension GL_EXT_shader_framebuffer_fetch : require 2014-04-14 19:55:34 +08:00
Unknown W. Brackets 419e812c9a Also color swap DXT textures.
Probably #5878.
2014-04-14 01:27:47 -07:00
Unknown W. Brackets 943353faac Use GL_BGRA for 32 bit textures on Windows.
25% improvement in Popolocrois, probably decent gains in other games using
32-bit textures often.  FF2 for example doesn't.
2014-04-14 00:28:31 -07:00
Henrik Rydgård a285d047ea Merge pull request #5873 from unknownbrackets/texcache
Fix texture cache invalidation...
2014-04-14 09:16:30 +02:00
Unknown W. Brackets 9982d04f9d Optimize the case of a direct byte copy.
Small improvement (like 3.5%) in God of War.
2014-04-13 21:31:30 -07:00
Unknown W. Brackets f4458edc76 Avoid unbinding the current fbo on block transfer.
Improves God of War performance by 25% (at least in the demo.)
2014-04-13 21:11:17 -07:00
raven02 a29255b647 Fix wrong stretch in Wildarm XF (non-buffered mode) 2014-04-14 11:40:04 +08:00
Unknown W. Brackets ca6e4635aa Fix texture cache invalidation. 2014-04-13 16:25:09 -07:00
Unknown W. Brackets dc0eea0522 Propagate texcache hash fails through cluts.
In games that use palette swapping (hi, FF2), if we detect a change in
a texture, another texture with the same address but new clut might not be
rehashed.

This just marks all other textures as dangerous when a hashfail occurs.

Fixes FF2 from recent optimizations.  It's slower, but still much faster
than before.
2014-04-13 16:20:58 -07: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 6cfc61665d Switch to a bitmask instead. 2014-04-13 14:45:55 -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
Unknown W. Brackets 2f72da8087 Don't dirty the texture on texmapenable.
Tales of Phantasia X flips on and off texturing during battle transitions.
This causes tons of needless rehashes.
2014-04-13 13:19:35 -07:00
Unknown W. Brackets b6dc7eba8b Simplify texture status checks a bit. 2014-04-13 13:19:35 -07:00
Unknown W. Brackets f2ff8544c7 Don't check diff in ExecuteOpInternal().
Since it's not called if !diff, there's no need.  Small performance
improvement.
2014-04-13 10:25:14 -07:00
Unknown W. Brackets e780a645cb Use the FLAG_EXECUTEONCHANGE flag.
Improves fps by 1-3% in some games, seems to be a win after all.
2014-04-13 10:23:21 -07:00
Unknown W. Brackets 22a80fb7be softgpu: Avoid multithreading thin polygons.
Small performance improvement (5-6% in some areas.)
2014-04-13 09:01:14 -07:00
Unknown W. Brackets 0d59fc0d2e Oops, forgot to reset the frame when unchanged.
Fixes #5861.
2014-04-13 08:15:48 -07:00
Henrik Rydgård 9bcb2f3a0e Merge pull request #5859 from raven02/patch-1
Implement in-shader ABSDIFF blending mode
2014-04-13 10:18:59 +02:00
Henrik Rydgård cb3db6ada4 Merge pull request #5854 from unknownbrackets/fbo-sizing
Try to improve FBO sizing
2014-04-13 10:16:23 +02:00
raven02 a9d7be1eab Should be id0 2014-04-13 16:13:59 +08:00
raven02 f1254c79ed Turn off regular alpha blending 2014-04-13 16:03:50 +08:00
raven02 e358a6dcbe Handle ABSDIFF blending mode using GL_EXT_shader_framebuffer_fetch 2014-04-13 16:01:55 +08:00
Unknown W. Brackets f462721394 Rather than only enlarging, watch for persistence.
If the game keeps using something at a new size, we know it's time to make
some adjustments.
2014-04-12 23:12:35 -07:00
raven02 568b14f890 Regress fix https://github.com/hrydgard/ppsspp/issues/5769 2014-04-13 13:58:34 +08:00
Unknown W. Brackets 1a53be45cc When uploading video pixels, detect w/h by size.
Sometimes the framebuffer size is incorrect, but kinda works... but this
is a problem for the video.  Using the size gets us better.

In Wild Arms XF, the framebuffer is 512x512, but that's not right.  It's
clear it should be 480x272.
2014-04-12 22:02:47 -07:00