Commit graph

158 commits

Author SHA1 Message Date
Unknown W. Brackets
1bbd3d04af Move the light params to separate funcs. 2014-04-21 22:47:44 -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
raven02
abc5c86339 Split out texture level 2014-04-19 06:45:17 +08:00
Henrik Rydgard
247b171eb0 Temporarily (?) revert ffdba45b4b because of massive perf drop in GT, working around #5900
Not sure what to do about the Chinese Tactics Ogre though...
2014-04-18 15:02:45 +02: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
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
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
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
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
raven02
a6523dd507 Texture lod bias should be signed 2014-04-12 02:33:52 +08:00
Unknown W. Brackets
27550a2336 Update some flags in GLES_GPU.
It's useful to know if we need to have a correct PC value or downcount.
2014-03-29 14:10:35 -07:00
The Dax
1ca3d39a50 Disable the adaptive vsync checks by commenting them out. No need to have a disabled check run every frame. 2014-03-24 20:15:41 -04:00
Henrik Rydgard
ba5d88e9d6 Fix bug in FastLoadBoneMatrix where the wrong uniform could be dirtied 2014-03-22 09:27:43 +01:00
Unknown W. Brackets
743854afc8 Fix off-by-one on fast matrix loads.
May matter mostly if there's a stall right at the end of the matrix.
2014-03-15 15:23:55 -07:00
Unknown W. Brackets
a843cbd580 Shrink the very common sceKernelThread.h include. 2014-03-15 11:44:02 -07:00
Unknown W. Brackets
505b0c388f Fix a typo. 2014-03-04 07:37:32 -08:00
Unknown W. Brackets
b1acde2679 Oops, forgot the world matrix too.
VerySleepy is telling me that time is spent in WORLDMATRIXDATA in games,
but I didn't check the perf impact exactly.  It's probably small, but may
help some games.
2014-03-04 01:09:04 -08:00
Unknown W. Brackets
9e35822d16 Try to load view and model matrices a bit faster. 2014-03-04 00:37:28 -08:00
Unknown W. Brackets
a8f9635e28 Optimize loading of texgen matrices.
Pretty small impact, may help games that use them a lot.
2014-03-04 00:23:10 -08:00
Unknown W. Brackets
d60b0272fa Avoid flushing if the bone matrix is the same. 2014-03-04 00:17:16 -08:00
Unknown W. Brackets
eb04031975 Try to optimize inline matrix loads.
Improves performance by a few percent in Gods Eater Burst.
2014-03-04 00:11:03 -08:00
Unknown W. Brackets
e08e9d8e89 Flush if morphing, even if only weight changed.
Fixes more graphical glitches that happen when software skinning is enabled.
2014-03-02 20:09:18 -08:00
Unknown W. Brackets
ecf9479d5a Always flush bone matrices when morph is enabled.
Fixes graphical glitches in Shadow of Destiny and LittleBigPlanet with
software skinning enabled.  Maybe the other games in #5304.
2014-03-02 18:20:16 -08: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
592e8ca253 Update reporting as soon as the game boots.
This way if it starts with "read framebuffers" but it's switched off, it
will notice properly.
2014-02-15 15:18:01 -08:00
Unknown W. Brackets
d2108a962e Switch from USING_GLES2 to MOBILE_DEVICE.
Still using USING_GLES2 for, well, GLES2.  But for things that are really
about mobile, we need a new define.  Devices are coming that don't use
GLES2.
2014-02-08 16:37:58 -08:00
Unknown W. Brackets
b48de952fd Duplicate framebuffers textured onto themselves.
This fixes #2917.

I verified that, at least for my card, blitting is much faster than
glReadPixels (by quite a margin.)
2014-01-20 07:54:39 -08:00
Unknown W. Brackets
60cf5df571 Consider the texture changed when framebuf changes.
Needed to properly consider render to self (should rebind if the
framebuffer is later used with a separate target.)
2014-01-20 07:52:09 -08:00
Unknown W. Brackets
b0a1340a80 Report block transfers we don't support.
Ones involving framebuffers.
2014-01-20 01:47:20 -08:00
Henrik Rydgard
da97a67526 Try a different approach to the problem in #5117 2014-01-16 22:52:14 +01:00
sum2012
016fa0cbff Fix Windows 64 bit gpu crash
Fix #2301 ,thanks @raven02
2014-01-16 22:01:38 +08:00
Henrik Rydgård
79ff2f0ba8 Start untangling our include mess a little. 2013-12-29 23:34:45 +01:00