Commit Graph

1647 Commits

Author SHA1 Message Date
Henrik Rydgård
4b019bfcbb Remove '_' from attribute names as Adreno hates them in glBindAttribLocation.
Sigh.

Also remove some logging.
2013-10-08 17:26:33 +02:00
Henrik Rydgård
0ecac31abd Use glBindAttribLocation to simplify shader usage a little. 2013-10-08 17:18:59 +02:00
Henrik Rydgård
df29da0b13 GLES3: Use glTexStorage2D for (possibly) more efficient texture uploading 2013-10-08 15:00:48 +02:00
Henrik Rydgård
2362640346 Merge pull request #4072 from raven02/patch-25
GLES: Add GE_CMD_ZWRITEDISABLE to ZTEST section
2013-10-08 01:53:00 -07:00
Unknown W. Brackets
f1f526f8cd Add some additional unknown cmds to reporting. 2013-10-08 00:34:17 -07:00
raven02
bf64df71f9 GLES: Add GE_CMD_ZWRITEDISABLE to ZTEST section 2013-10-08 09:29:51 +08:00
Henrik Rydgard
fc8aa7bd8f Crashfix dumping display lists that start at the start of VRAM (seems to hit this in GTA).
Add a couple of comments.
2013-10-07 22:58:46 +02:00
Henrik Rydgard
cd57e8a09d Forgot that you should never walk arrays with member variables, throws off the MSVC optimizer (probably a pointer aliasing issue) 2013-10-07 21:35:22 +02:00
Henrik Rydgard
4751dd631c Some more IndexGenerator optimization just for kicks 2013-10-07 21:13:52 +02:00
Henrik Rydgard
f645988b8f More precision annotations in shader generators, other microoptimizations 2013-10-07 20:15:00 +02:00
Henrik Rydgard
af46d17b94 Optimize index generator 2013-10-07 20:15:00 +02:00
Henrik Rydgård
07cf92b3a9 Merge pull request #4066 from unknownbrackets/debugger
GE debugger - fix some preview issues, softgpu stencil fix
2013-10-07 06:12:55 -07:00
Unknown W. Brackets
b9811c7c97 Use the slow way to get the softgpu texture.
So that it actually shows what the softgpu is using.
2013-10-07 01:26:48 -07:00
Unknown W. Brackets
5c2d418d95 Read softgpu stencil using existing funcs.
Slower but at least it's the same.
2013-10-07 01:02:58 -07:00
Unknown W. Brackets
b9453f82ca Use the full alpha bits for stencil in softgpu.
It works to increment and set the stencil, so it can't be high bits only.
2013-10-07 01:00:43 -07:00
Unknown W. Brackets
31171cc044 Grab the stencil buffer in softgpu debugging. 2013-10-07 00:50:15 -07:00
Unknown W. Brackets
a0d84d45cc Flip the texture preview when it's a framebuffer. 2013-10-07 00:38:46 -07:00
Henrik Rydgård
8f7a9656c8 Merge pull request #4062 from unknownbrackets/debugger
Show tabs for depth/stencil in ge debugger, other improvements
2013-10-06 23:59:54 -07:00
Unknown W. Brackets
ff0e9cf32d Make it possible to flip flags in the ge debugger. 2013-10-06 22:17:56 -07:00
Unknown W. Brackets
3af88b1e4e Show the stencil buffer properlyish in ge debugger. 2013-10-06 22:17:55 -07:00
Unknown W. Brackets
d49ad5f114 Use an accessor for depth/frame addresses. 2013-10-06 22:17:53 -07:00
Unknown W. Brackets
0c03dc2dec Handle it better when viewing an invalid addr. 2013-10-06 22:17:52 -07:00
Unknown W. Brackets
a09119ba04 Correct savestates when dls had context saving.
It was wrong, and also they were different between 64/32 bit.
2013-10-06 22:10:44 -07:00
Henrik Rydgård
92a2f2d0f0 Merge pull request #4049 from unknownbrackets/gpu-minor
Skip bounding box when set to 0
2013-10-05 23:03:08 -07:00
Unknown W. Brackets
dcdf730407 Fix a possibly wrong framebuffer pointer. 2013-10-05 17:19:52 -07:00
Unknown W. Brackets
a5e9c3b10a Get stencil/depth reading for ge debugger.
Possibly works on NVIDIA only...
2013-10-05 17:19:17 -07:00
Unknown W. Brackets
32f2f045e4 Don't report a loadclut of 0. 2013-10-05 15:41:44 -07:00
Unknown W. Brackets
01c84caffc Skip bounding box when set to 0.
VectorTD does this, for example, and it seems innocent, just resetting all
cmds.  Not sure what it should set the flag to, though.
2013-10-05 15:41:44 -07:00
Henrik Rydgård
fec5110dfc Merge pull request #4045 from unknownbrackets/warnings
Warning fixes
2013-10-05 13:31:34 -07:00
Unknown W. Brackets
eae6e87620 Simplify lighting clamping in softgpu. 2013-10-05 13:05:32 -07:00
Unknown W. Brackets
013e3f3be2 Add very basic and slow DXT decoding to softgpu. 2013-10-05 12:25:18 -07:00
Unknown W. Brackets
2eb10c3b3f Add basic GetCurrentTexture() to softgpu. 2013-10-05 11:37:14 -07:00
Unknown W. Brackets
49bd553238 Avoid some shadowing warnings. 2013-10-05 11:13:39 -07:00
Sacha
424a24366c Buildfix for Symbian. 2013-10-05 02:51:56 +10:00
Henrik Rydgard
bfd30886b7 Save a few GL calls per frame on Tegra using NV_draw_texture 2013-10-01 16:22:55 +02:00
raven02
90e77f8c30 Remove duplicate comment 2013-10-01 14:04:48 +08:00
raven02
7f3a3ccd6c Projection mapping : Initialize z as 1.0f 2013-10-01 09:01:38 +08:00
Henrik Rydgård
6b3d78adfc glDrawRangeElements seems to cause problems in monster hunter? 2013-09-30 13:22:17 +02:00
Henrik Rydgård
add0350b56 Merge pull request #3967 from raven02/patch-17
Quick fix FF4 CC missing title text in framebuffer-to-memory mode
2013-09-30 03:39:47 -07:00
Henrik Rydgård
a95a1a914c Merge pull request #3992 from unknownbrackets/savestates
Add rewind functionality only (no UI)
2013-09-30 01:52:49 -07:00
Henrik Rydgard
f48e0af235 Better check for blendmode 2013-09-30 10:17:23 +02:00
Henrik Rydgard
e65d0b4791 Use EXT_blend_minmax when available. Minor tweaks. 2013-09-30 10:12:10 +02:00
Henrik Rydgård
5daa22f801 Merge pull request #3991 from unknownbrackets/dmac
Implement sceDmacTryMemcpy(), improve sceDmacMemcpy()
2013-09-30 00:29:20 -07:00
Unknown W. Brackets
9e1e64d62e Swap render targets when drawing spline/beziers. 2013-09-29 23:31:07 -07:00
Unknown W. Brackets
d7622869a9 Warning fix. 2013-09-29 20:28:19 -07:00
Unknown W. Brackets
74908f6b38 Add errors and rescheduling to sceDmac*.
The functionality seems pretty straight-forward.
2013-09-29 16:51:49 -07:00
Unknown W. Brackets
506180fd07 Cut down texcache cap to 512.
This will make textures rehash 4x more often if they seem to be static.

Previously, 2048 for a 30 fps game meant 69 seconds before it would notice
a change.  This is really long for fonts that get missed sometimes.

This takes that down to 17.5 seconds.  Still quite a while, but something
a normal person is much more likely to wait for.

Hopefulyl won't hurt performance much normally.
2013-09-29 15:26:56 -07:00
Unknown W. Brackets
f667d26814 Fix texcache rehash backoff.
If a texture was reused (with other textures in between) several times per
frame, it would be rehashed more frequently than it should be.

Also tries to avoid rehashing several textures on the same frame if they
do not change.
2013-09-29 15:24:02 -07:00
Unknown W. Brackets
0aa263511d Don't clear the GPU caches on savestate, just load.
And maybe it's not even fully necessary on load...
2013-09-29 13:19:32 -07:00
Henrik Rydgard
99a7ff0973 Fix shader generation issue for desktop PowerVR chips - are there still such things???
Seen in our automatic reports.
2013-09-29 11:17:12 +02:00
raven02
50de251aa2 Fix few crashes when vfb->fbo is null when using GE debugger 2013-09-29 13:03:36 +08:00
raven02
6c1017c45e Render-to-texture : Remove no longer valid game list comments 2013-09-29 10:52:29 +08:00
Henrik Rydgard
a5d30d2f02 Enable FXAA on mobile. Hopefully the buildbot will copy the shader, too... 2013-09-28 23:51:10 +02:00
Henrik Rydgård
5fba85d62b Merge pull request #3787 from unknownbrackets/softgpu
softgpu: Skip the stencil/depth tests in a clear
2013-09-28 13:25:35 -07:00
danyalzia
12d15bc13e fix a clamping bug in pre-HD ATI/AMD drivers 2013-09-29 00:25:13 +05:00
danyalzia
1aa3c39f77 Do not read through PBOs 2013-09-29 00:17:19 +05:00
Unknown W. Brackets
e79781b1a3 softgpu: Skip the stencil/depth tests in a clear. 2013-09-28 12:15:07 -07:00
Henrik Rydgård
db27cdd138 Merge pull request #3947 from raven02/patch-14
Fix missing minimap and title effect in Hexyz Force
2013-09-28 07:52:09 -07:00
Unknown W. Brackets
da1d700904 Attempt to support rendering depth/stencil.
But no interface yet.  I can't tell if it works, I just get black...
2013-09-28 02:38:05 -07:00
Unknown W. Brackets
14efcbcc9b Add an interface to grab the depth/stencil buffers.
Not sure yet how to show in UI, not well tested...
2013-09-28 02:23:07 -07:00
Unknown W. Brackets
81e71dd8d7 Add a way to get to the current texture as well. 2013-09-27 22:46:08 -07:00
Unknown W. Brackets
75f2995f25 Move some texture deindexing to GPU/Common/. 2013-09-27 22:46:07 -07:00
Unknown W. Brackets
b4b0b33f57 Move DXT decoding to GPU/Common/. 2013-09-27 22:46:06 -07:00
raven02
748ae6a3e7 Workaround fix issue #3912 2013-09-28 00:28:53 +08:00
raven02
8564d146c8 Rename roundTo255th to roundTo255thf 2013-09-28 00:06:18 +08:00
Henrik Rydgard
b10e2bce3c Add FXAA antialiasing on non-mobile. Works best when render resolution = window size. 2013-09-26 12:41:59 +02:00
Henrik Rydgård
e7c01b8d32 Clang fixes (apple) 2013-09-25 18:50:09 +02:00
Henrik Rydgard
4cba4efbba Try to fix scaling of generated UV texcoords on splines. 2013-09-24 14:14:05 +02:00
Henrik Rydgard
bd8cb4b02d Start work on implementing bbox, add a comment with some thoughts.. 2013-09-24 14:14:05 +02:00
Henrik Rydgard
424b4cbd5f Move GE_CMD_BJUMP to GPUCommon. Add the flag. (no actual bbox impl yet) 2013-09-24 14:14:04 +02:00
Henrik Rydgard
2b66a850be More spline/bezier optimization. Enable real splines. Add option "Low quality spline/bezier curves". 2013-09-24 11:14:49 +02:00
Unknown W. Brackets
bdfc8bf4b3 Mark texture as maybe changed when running lists. 2013-09-23 23:17:56 -07:00
Unknown W. Brackets
4c3b3484d7 Actually apply the restored gstate. 2013-09-23 23:17:36 -07:00
Henrik Rydgard
ff8c6ba225 Optimize real splines. Still not active. 2013-09-23 23:02:31 +02:00
Henrik Rydgard
9dc9c89918 Possible fix to bezier texture coordinate problem reported by CPkmn 2013-09-23 22:02:58 +02:00
Henrik Rydgard
bdbf6c5237 Enable (hopefully) correct beziers. Add full spline tesselation from JPCSP, disabled
Disabled real splines as it's way too slow, needs a complete rewrite. But works, except
for normal generation.
2013-09-23 20:29:34 +02:00
Unknown W. Brackets
f89ba75c38 Flag the texture on format/swizzle change. 2013-09-23 08:08:06 -07:00
Henrik Rydgard
171fe00383 More work on spline/bezier tesselation. Disabled for now, there are still issues. 2013-09-23 15:55:53 +02:00
raven02
e1f63f2e6d Set gstate_c.textureChanged = true; and | FLAG_EXECUTE for GE_CMD_TEXWRAP 2013-09-23 20:49:24 +08:00
Unknown W. Brackets
6a313ac204 Support flipped and not flipped buffers. 2013-09-22 22:37:37 -07:00
Unknown W. Brackets
4bc912c6db Detect tricks with depthbuffers and report them.
Tons of games share framebuffers though, but data is good...
2013-09-22 21:48:03 -07:00
Unknown W. Brackets
38a4f2112d More carefully log unknown GE commands.
Need FLAG_EXECUTE or they won't log, we were only getting the
ReapplyGfxState() ones before.  Let's skip 0 to not log those as well.
2013-09-22 21:01:53 -07:00
Unknown W. Brackets
6073317591 Support render res. above 1x in ge debugger. 2013-09-22 20:14:31 -07:00
Unknown W. Brackets
6af44910c1 Add an interface to return the current framebuffer. 2013-09-22 19:03:31 -07:00
Unknown W. Brackets
3787471791 Add some initial methods to GPUDebugInterface. 2013-09-22 10:22:33 -07:00
Unknown W. Brackets
eabd8b5302 Add GPU debugging hooks to Host, not yet in use. 2013-09-22 08:14:55 -07:00
raven02
4bda275acd Try another attempt for reading framebuffer to memory and code cleanup 2013-09-22 17:03:39 +08:00
Henrik Rydgard
0c873fb1c3 Spline/Bezier: Fix UV generation issue. 2013-09-22 10:51:11 +02:00
raven02
ddd5b26e61 Buildfix 2013-09-22 16:37:22 +08:00
Henrik Rydgård
f6ca0bd90c Merge pull request #3849 from raven02/patch-21
Add reporting for unsupported GE commands (BJUMP/BOUNDINGBOX)
2013-09-22 01:32:33 -07:00
Henrik Rydgard
3e96b624a2 Bezier/Spline: Don't generate UVs if UVs are already specified in the control points 2013-09-22 10:21:15 +02:00
raven02
aa38dc238d Merge remote-tracking branch 'upstream/master' into patch-21
Conflicts:
	GPU/GLES/GLES_GPU.cpp
2013-09-22 16:08:44 +08:00
Henrik Rydgard
5fcc96828a Actually generate those poor-quality normals on splines and beziers 2013-09-22 10:01:46 +02:00
raven02
67b7ed53c7 Log which GE command get called 2013-09-22 15:55:53 +08:00
Henrik Rydgard
d7ae3f88a1 Do Beziers more correctly (although still not tesselating properly).
Snow now visible in SSX.
2013-09-22 09:52:46 +02:00
Unknown W. Brackets
2e2fa53201 Preseve offsetAddr on stall, instead of reset to 0.
Only for new lists is it reset to 0, afaict.
2013-09-21 21:01:41 -07:00
Unknown W. Brackets
881cefbc83 A paused list will allow a context save.
Just not stall, drawing, etc.
2013-09-21 21:01:41 -07:00
Unknown W. Brackets
e10ae1530b Error and reporting for sceGeBreak's second param. 2013-09-21 21:01:40 -07:00
Unknown W. Brackets
6ffbf3964a Use the right vertex/index addr in NullGpu. 2013-09-21 18:56:26 -07:00
Unknown W. Brackets
e9db63f61d Refuse to dequeue a running/completed list. 2013-09-21 15:03:30 -07:00