Commit Graph
1607 Commits
Author SHA1 Message Date
Unknown W. Brackets 58fe022ecd vertexjit: Avoid switching to VFP from NEON. 2014-03-23 16:26:17 -07:00
Unknown W. Brackets a1301f5c4d Log if any games are actually using s8 through.
Not sure about z sign.
2014-03-23 16:26:16 -07:00
Unknown W. Brackets 154b0d14a5 vertexjit: Combine a few loads and stores on ARM. 2014-03-23 16:26:16 -07:00
Unknown W. Brackets b55ad0d9c6 vertexjit: Improve NEON align on color morph ARM. 2014-03-23 16:26:15 -07:00
Unknown W. Brackets 9698a565b7 vertexjit: Implement NEON color morphs on ARM. 2014-03-23 16:26:15 -07:00
Unknown W. Brackets a478436de9 vertexjit: Attempt 16-bit color morphs on ARM. 2014-03-23 16:26:15 -07:00
Unknown W. Brackets 29f9ea5df6 vertexjit: support 8888 morph on ARM. 2014-03-23 16:26:14 -07:00
Unknown W. Brackets 34747b7aa4 vertexjit: Support morph pos/norm on ARM as well. 2014-03-23 16:26:14 -07:00
Unknown W. Brackets 009c3ee3f7 vertexjit: Save S16-S31 registers in ARM. 2014-03-23 16:26:13 -07:00
Unknown W. Brackets b04553b983 vertexjit: Fix non-morph 5551 decoding.
Oops, it was just wrong before.
2014-03-23 16:26:13 -07:00
Henrik Rydgard b174996c1c Add a conservative check that prevents alpha testing in a few cases.
This will become really powerful if we add some code to the vertex decoder
to check for non-full alpha in the vertices, and set gstate_c.vertexFullAlpha if none
is found (probably want to do the reverse, set it to true and clear if any non-255 alpha is found).

Alpha testing is a performance killer on many mobile GPUs so big efforts to
avoid it can be worth it.
2014-03-23 16:32:38 +01:00
Henrik Rydgard 20d480a374 Minor GPU code cleanups 2014-03-23 16:32:38 +01:00
Unknown W. Brackets b44d10a91e Move texture unswizzling to decoder, use NEON. 2014-03-22 21:35:16 -07:00
Henrik Rydgard 8b92dcea47 Transform: Compute the "DCID" (draw call ID) incrementally instead of an extra pass. 2014-03-23 01:51:51 +01:00
Henrik Rydgard 8bf015fe16 texcache: SSE optimized version of the most common case of Unswizzle
(didn't put this in fast_math because it's pretty specific to PSP)
2014-03-23 01:50:50 +01:00
Unknown W. Brackets 632eec38e8 vertexjit: Use SSE4.1 where available on x86.
Just because we can.
2014-03-22 16:11:16 -07:00
Unknown W. Brackets 5d04f123b9 vertexjit: A couple more tweaks to morph on x86. 2014-03-22 15:56:30 -07:00
Unknown W. Brackets 12c2683fb8 vertexjit: Cut a few more instrs from x86 morph. 2014-03-22 15:56:30 -07:00
Unknown W. Brackets 0da5caf11a vertexjit: Cut a few instrs from morph on x86. 2014-03-22 15:56:30 -07:00
Unknown W. Brackets 162f229294 vertexjit: Support the color morphs on x86. 2014-03-22 15:56:29 -07:00
Henrik Rydgard 63aeb31e07 Attempt workaround for fog issue #5384 2014-03-22 23:49:14 +01:00
Henrik Rydgård 8dfadf7b8e ArmEmitter: Add VMOV_neon and a Size parameter to VFMA for consistency. 2014-03-22 16:31:16 +01:00
Henrik Rydgård 98da5144ef Merge pull request #5612 from raven02/patch-27
Shade mapping fix
2014-03-22 14:37:22 +01:00
Unknown W. Brackets 66f501b981 Avoid an invalid enum on GLES2 texture creation.
My device logs an error, which I'm guessing has perf impact.
2014-03-22 09:34:22 +01:00
Henrik Rydgard f4db725400 Remove redundant call to ReplaceAlphaWithStencil 2014-03-22 09:28:45 +01: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 678237aa6c Improve SSE usage in software transform.
It's actually already pretty decent (unlike the softgpu), but there were a
few places it could use a bit of help.  Speeds up things with hardware
transform off, or areas that need to use software transform.
2014-03-17 23:05:48 -07:00
Unknown W. Brackets 1ce6bf399a Buildfix for 32-bit x86, arg. 2014-03-17 21:52:45 -07:00
Unknown W. Brackets 6630e45eff Just add a packed version of Vec3f.
This way we can have it aligned to memory where needed.  I think it'd be
better to avoid this if possible so that we can actually vectorize
spline/etc. code.

Fixes #5673.
2014-03-17 06:59:40 -07:00
Unknown W. Brackets 38d0bac1df Optimize some 4444/8888 color conversions.
Small performance boost in softgpu.
2014-03-17 01:21:52 -07: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
Henrik Rydgård 78ce9b3f3c Spline patches: Ignore too-small patch_div_s/t. May help #5663 2014-03-15 21:29:48 +01:00
Unknown W. Brackets a843cbd580 Shrink the very common sceKernelThread.h include. 2014-03-15 11:44:02 -07:00
Unknown W. Brackets 996fa39684 Reduce some unnecessary includes in Core/. 2014-03-15 10:41:07 -07:00
Henrik Rydgard b4d99b1981 Revert "Avoid caching when HW T&L with morph enabled."
This reverts commit 557eae7ca9.
2014-03-15 10:46:04 +01:00
raven02 557eae7ca9 Avoid caching when HW T&L with morph enabled. 2014-03-14 21:04:32 +08:00
Henrik Rydgard 4df49a72ab Add yet another hack setting to work around the 3rd Birthday problem.
Hopefully temporary...
2014-03-13 19:00:35 +01:00
raven02 1b831ce022 SW T&L 2014-03-07 21:41:40 +08:00
Sacha 05571df8ec Use a VLDM in Vertex Decoder. 2014-03-07 14:25:05 +10:00
raven02 2c7c1f547d Shade mapping fix 2014-03-06 22:07:08 +08: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 f124e7dddc Fix a minor typo. 2014-03-03 00:21:04 -08:00
Unknown W. Brackets c7437bbe8e Fix some minor warnings. 2014-03-03 00:08:32 -08:00
Henrik Rydgård c2f76ac549 Merge pull request #5594 from unknownbrackets/gpu-minor
Fix some software skinning glitches
2014-03-03 13:32:03 +07:00
Unknown W. Brackets fb63dad54e vertexjit: Implement Morph pos/nrm variants on x86. 2014-03-02 20:11:40 -08:00