Commit Graph

1519 Commits

Author SHA1 Message Date
Henrik Rydgard
f4ad7c64e5 Fix issue with texcoord speed hack (bPrescaleUV) in software transform
(and also thus rectangles of course even when hw transform is enabled)
2013-11-10 11:18:26 +01:00
Henrik Rydgård
179068823c Merge pull request #4491 from raven02/patch-15
Attempt for another matching framebuffer logic
2013-11-10 01:58:29 -08:00
Unknown W. Brackets
1633aa689c Remove the extra process queues hack.
It seems like it's not helping anymore so it could be hurting.
2013-11-09 23:08:44 -08:00
raven02
7c6a4cf87e Attempt for another matching framebuffer logic 2013-11-10 10:38:33 +08:00
Unknown W. Brackets
3f57f1f447 Disable the secondary texcache on mobile.
It helps in games like Final Fantasy 2 and Popolocrois, but it seems to
cause out of memory errors despite the checks.
2013-11-09 12:52:58 -08:00
Henrik Rydgard
63334698e1 Add temporary setting to disable the vertex decoder jit while we debug it 2013-11-09 18:16:26 +01:00
Henrik Rydgård
d04415ac5d Merge pull request #4479 from unknownbrackets/perf
Small optimizations (armjit) for imms
2013-11-08 11:45:16 -08:00
Unknown W. Brackets
385f9a457e Use GetPointerUnchecked in how, pre-checked areas. 2013-11-08 11:39:24 -08:00
Henrik Rydgard
0e542b6ecc vtxdec: small omission 2013-11-08 20:38:49 +01:00
Henrik Rydgard
22d6b36005 Vertexdecoder "double": fix for x86 and very minor optimization for arm. 2013-11-08 20:03:28 +01:00
Henrik Rydgard
6b45c321b6 vtxdecjit: turn off excessive logging 2013-11-08 18:49:17 +01:00
Henrik Rydgard
381b6d0f05 VertexDecoder JIT: Add the last missing ones except morph, I think. 2013-11-08 12:43:46 +01:00
Henrik Rydgard
502cbc170a Revert "Another attempt to sizing framebuffer based on fmt"
This reverts commit c0e8893560.
2013-11-07 15:29:11 +01:00
Henrik Rydgård
c213c44050 Merge pull request #4468 from hrydgard/vtxdec-prescale
Add support for prescaled UV in vertex decoder JIT
2013-11-07 02:51:14 -08:00
Henrik Rydgard
c4e3dd14fd Add commented-out code to save XMM4/XMM5.
According to all calling convention manuals I can find, we don't really
need to preserve them. If they become problematic as mentioned, we can
activate this.
2013-11-07 09:54:58 +01:00
raven02
c0e8893560 Another attempt to sizing framebuffer based on fmt 2013-11-07 10:56:41 +08:00
Henrik Rydgard
64bdb5e21d Tiny optimization (32-bit) in GLES_GPU::FastRunLoop 2013-11-07 01:34:43 +01:00
Henrik Rydgard
b203da05e9 Prescale UV in vtx-dec-jit: Fix bugs, add ARM support 2013-11-07 01:24:53 +01:00
Henrik Rydgård
367bcf6d4f Prescale in the vertex dec jit. Needs debugging. 2013-11-07 01:24:53 +01:00
Unknown W. Brackets
34398b7d0c Avoid literal loads in the arm vertexjit. 2013-11-06 08:45:00 -08:00
Unknown W. Brackets
78400fd460 Avoid some dereferencing in gpu FastRunLoop. 2013-11-06 07:50:16 -08:00
Henrik Rydgård
51995a3d43 Vtx dec: After generating ARM, remember to flush the icache.
Will hopefully fix the random crashes in #4461.
2013-11-06 16:14:40 +01:00
Henrik Rydgård
e3f6f25390 Buildfix for non-Windows non-ARM 2013-11-06 13:54:26 +01:00
Henrik Rydgård
ea9da85bdb Missed one possible unaligned access 2013-11-06 13:14:49 +01:00
Henrik Rydgård
b3fdfc01c8 ARM vtx dec: Avoid all unaligned accesses entirely.
Seeing so much contradictory information on the support and performance
of these.
2013-11-06 12:17:41 +01:00
Henrik Rydgård
1e158fa652 ARM vtx dec: Preserving our FP scratch register appears to improve
stability.

Also added some logging.
2013-11-06 11:47:26 +01:00
Henrik Rydgård
b19d41f9a8 Now that LDRH works, use it where appropriate 2013-11-06 10:51:21 +01:00
Henrik Rydgard
0eb3d79de9 x86 VertexDecoder jit: Fix typo in 16-bit weight decoder. May fix crashes. 2013-11-05 21:06:43 +01:00
Henrik Rydgård
a03e5c6de0 Merge pull request #4460 from hrydgard/vertex-decoder-jit
Vertex decoder JIT
2013-11-05 07:30:58 -08:00
Henrik Rydgård
7bf8a4dc5e We need to use a signed VCVT to float in PosS*Through 2013-11-05 12:17:18 +01:00
Unknown W. Brackets
c7edf73cdb Small optimizations to the vertexjit. 2013-11-05 00:32:08 -08:00
Unknown W. Brackets
f6662054bd Fix arm emitter bug in LDRH and friends. 2013-11-05 00:32:08 -08:00
Henrik Rydgård
9113c584f1 Merge pull request #4399 from raven02/patch-11
Attempt to go back to the earliest logic of finding a matching framebuffer
2013-11-04 04:43:34 -08:00
Henrik Rydgård
5886ccffdc Merge pull request #4441 from unknownbrackets/vertex-decoder-jit
Force 5 byte jumps to avoid jump target issues (vertex jit, x86)
2013-11-04 01:25:40 -08:00
Unknown W. Brackets
06194ac261 Add 5551 conversion to the arm vertexjit. 2013-11-04 00:47:05 -08:00
Unknown W. Brackets
16dcf807a8 Add 565 conversion to arm vertexjit. 2013-11-03 21:58:26 -08:00
Unknown W. Brackets
ab17d659cf Implement 4444 conversion in arm vertexjit.
Seems to help Dissidia a bit.
2013-11-03 21:58:26 -08:00
Unknown W. Brackets
bfda36efff Don't subtract nrmoff in arm vertexjit. 2013-11-03 21:57:55 -08:00
Unknown W. Brackets
a1fa65f631 Stupid typos, broke 4444 and 565. 2013-11-03 18:43:24 -08:00
Unknown W. Brackets
d5337edf1f Force 5 byte jumps to avoid jump target issues.
Some with 16-bit colors were too far.
2013-11-03 17:17:04 -08:00
Unknown W. Brackets
aece4fd580 16-bit colors in vertex jit for x86. 2013-11-03 15:04:47 -08:00
Henrik Rydgard
f0fd7679ce Preliminary ARM vertex decoder JIT. Has a weird issue in PosS16.
Other minor changes and fixes.
2013-11-03 20:15:42 +01:00
Henrik Rydgard
810b1a061f Vertex decoder JIT for x86 and x64. Handles the most common vertex formats. 2013-11-03 15:27:12 +01:00
Unknown W. Brackets
e33b7fa1a4 iOS buildfix. 2013-11-03 01:08:48 -08:00
Henrik Rydgård
e12894a420 Merge pull request #4407 from unknownbrackets/texcache
Add a NEON version of the tex hash.
2013-11-02 07:41:39 -07:00
Henrik Rydgard
58860158df Turn off the UNPACK optimization when texture scaling is on. Fixes #4408 2013-11-02 15:23:35 +01:00
Henrik Rydgård
4d3e57d6eb Move normal reversion into the vertex shader instead of the decoder. 2013-11-02 11:05:31 +01:00
Unknown W. Brackets
4d47ccd5df Add a NEON version of the tex hash.
Should be used only for NEON devices.  Currently only compiled on Android.
2013-11-02 02:09:54 -07:00
Henrik Rydgård
1347c3b019 Merge pull request #4387 from hrydgard/unpack_subimage
Use GL_EXT_unpack_subimage to speed up non-pow-2 texture loads when available
2013-11-01 12:02:50 -07:00
Henrik Rydgard
a3a1395fc0 No need to set PACK parameters when we UNPACK 2013-11-01 19:56:06 +01:00
Henrik Rydgard
1fb7cdfcd2 Remove redundant call to ConvertColors, skip a copy when possible 2013-11-01 19:38:53 +01:00
Henrik Rydgard
5de7bb2e2d Use GL_EXT_unpack_subimage to speed up non-pow-2 texture loads when available 2013-11-01 19:38:52 +01:00
raven02
5b228d5fe4 Attempt to go back to thevery original finding a matching framebuffer logic 2013-11-01 22:00:34 +08:00
Unknown W. Brackets
1ee83935cb Correct texcache alignment check.
Oops.
2013-10-31 23:37:05 -07:00
Unknown W. Brackets
dc8902dbff Cut down on color conversion instructions (x86.) 2013-10-31 23:29:18 -07:00
Unknown W. Brackets
96256f43e9 Make sure clut memory is aligned.
For SSE color conversion, etc.
2013-10-31 23:29:17 -07:00
Unknown W. Brackets
f42cd11ddb Speed up color conversion using SSE.
Probably not the very most optimal implementation, but faster and SSE2.
2013-10-31 23:29:17 -07:00
Unknown W. Brackets
82761de992 Improve the texture cache hash on x86.
It's a bit less weak now, but still not strong.  Still fairly fast, it
seems like.
2013-10-31 23:29:16 -07:00
Henrik Rydgard
b9c908ba3f Update post-processing shaders to work again after removing u_viewproj.
Initialize some uninitialized variables.
2013-10-31 00:07:55 +01:00
Henrik Rydgård
70e4214e2e Add comment with a link to an important github thread 2013-10-30 23:08:03 +01:00
Henrik Rydgård
07a868910e Add a temporary hack option that may help debugging the wipeout glow.
It reduces the glow problem by a lot but is obviously incorrect.
2013-10-30 22:47:36 +01:00
Henrik Rydgård
357b133ff6 No need to dirty the PROJ_THROUGH when only the proj matrix is being
changed.
2013-10-30 22:47:36 +01:00
Henrik Rydgård
7e27bd9dc9 Framebuffer draws: Get rid of the u_viewproj uniform matrix. 2013-10-30 22:47:36 +01:00
danyalzia
950c961dbc Shader Improvements and cleanup
Added sharpen shader

Added support for bloom and sharpen shader

cleanup

cleanup
2013-10-30 00:33:21 +05:00
Henrik Rydgard
78aa64500e Fix bug when combining draw calls for hashing 2013-10-29 16:18:15 +01:00
Henrik Rydgård
60b1cb0008 Combine draw calls when hashing when possible, should help the same games as #4312 2013-10-29 12:14:09 +01:00
Henrik Rydgård
4352d720d8 Let's not use #define in GLSL ES shaders.
There are rumours that Vivante chips hate these.
2013-10-29 11:37:16 +01:00
Henrik Rydgård
0471a8c886 Only set fogdepth to highp on PowerVR. May fix #4333 2013-10-28 15:38:25 +01:00
Unknown W. Brackets
1e65a691f4 Cap the number of vertexes per flush.
Might not be realistic, but we crash if we go over.  Pretty unlikely to
happen in real games, but I suppose not impossible.  Happens in the vertex
speed demo (#3106.)
2013-10-27 14:43:58 -07:00
Sacha
ecfe43c149 CityHash is not used anymore, so we won't compile it. 2013-10-28 03:26:00 +10:00
Sacha
2c74693f6c VSync codepath only works on _WIN32 so only show it and check it there. 2013-10-27 23:09:46 +10:00
Henrik Rydgård
5408a06e6c Merge pull request #4274 from unknownbrackets/fb-minor
Detach framebuffers when texcache match fails, properly
2013-10-27 00:53:44 -07:00
Unknown W. Brackets
30bf067787 Generate a texture name even for fbo textures.
Otherwise, when it stops being a render-to-texture, we won't have a
texture name and we'll get confused.  A texture name shouldn't be
expensive to generate in this case anyway.
2013-10-26 08:37:52 -07:00
Unknown W. Brackets
453be5530e Make sure we recheck a fb tex that didn't match. 2013-10-26 08:35:53 -07:00
Unknown W. Brackets
42f7b42af4 Avoid getting stuck with a bad tex framebuffer. 2013-10-26 08:35:52 -07:00
Unknown W. Brackets
8b64a2c70c Fix unlikely case in DrawPixels().
If linesize doesn't match, also use convBuf.
2013-10-26 08:35:52 -07:00
Henrik Rydgård
1507358b45 Merge pull request #4322 from unknownbrackets/gpu-minor
Make sure frag shader ID matches generated code
2013-10-26 08:28:41 -07:00
Unknown W. Brackets
2c56ccef18 Make sure frag shader ID matches generated code.
Before, we would use an id with alphatest on, but not actually compile in
alphatest.  Or, we would use a shader with alphatest, when we actually
could compile it out.
2013-10-26 02:19:02 -07:00
Unknown W. Brackets
f9352ad0b8 Update fbos even if they're not the display.
But only when coming from a video or other safe source, to ensure we don't
hurt speed.  Although, might be interesting to do it always?

With the previous commit, fixes #4273.
2013-10-26 00:36:37 -07:00
Unknown W. Brackets
7aa70b473b Set the viewport properly on video frame draw.
Fixes #3771, video frames being drawn at the wrong size at non-1x.
2013-10-26 00:32:03 -07:00
Henrik Rydgård
b896a29ec0 New attempt at solving #4272 by not using alpha in the backbuffer.
If some effect ends up requiring destination alpha, just use buffered
rendering.
2013-10-25 12:44:21 +02:00
Unknown W. Brackets
deaaa99763 Exclude 0xFF from logging, happens a lot. 2013-10-24 22:03:10 -07:00
Unknown W. Brackets
ac027fac81 Fix missing uniform for GE_TEXMAP_TEXTURE_MATRIX. 2013-10-24 21:59:44 -07:00
Henrik Rydgård
5705acba04 Cleanup 2013-10-23 16:10:58 +02:00
Sacha
b0d7f758be Remove QCOM binning control detection. Qualcomm suggests not to use it and it causes crashes on my Adrenos anyway. 2013-10-23 15:02:48 +10:00
Sacha
78d6ad6f80 Clean up GLES3init. Pass Blackberry version through to defines. Update QCOM binning comment. 2013-10-23 15:02:48 +10:00
Henrik Rydgard
5d47aabb08 Seems we need high precision for fog on PowerVR. #4287 might be fixed by this. 2013-10-22 19:56:06 +02:00
Henrik Rydgard
726de7086d Fix postprocessing shaders on Tegra 2013-10-22 15:56:07 +02:00
Henrik Rydgard
2292531dd6 Small optimization for Disable Alpha Test - makes sure we don't generate the same shader twice. 2013-10-22 15:15:13 +02:00
Henrik Rydgard
a88ab80477 Only clear the shader cache when toggling "Disable alpha test" 2013-10-22 14:34:16 +02:00
Henrik Rydgard
cae2934c70 Buildfix 2013-10-22 13:40:51 +02:00
Henrik Rydgard
bf59f3db73 Add ugly hack setting for PowerVR to disable alpha test
Causes glitches but the speedup is truly massive in some games so I relent :/

Please do not report graphics bugs when this is enabled...

Future: Maybe remove this setting except on PowerVR?
2013-10-22 13:00:19 +02:00
Henrik Rydgard
7d8aed096a Add proper support for upscaling shaders, add Spline36 upscaling
Spline36 isn't as amazing as I had hoped heh. And it will need work to
work in GLSL ES. Anyway...

This also renames u_texcoordDelta to u_texelDelta to fit in with u_pixelDelta.
2013-10-22 12:18:49 +02:00
Henrik Rydgard
492fcb261b Reset viewport in CopyDisplayToOutput. Fixes flickering video in non-1:1 resolutions in some games. 2013-10-22 11:19:06 +02:00
Henrik Rydgard
0dd0948f81 The built-in draw2d shader doesn't need a version number specified 2013-10-21 00:42:46 +02:00
danyalzia
4567acaf92 Only turn on filtering in FMV when alpha test isn't enabled 2013-10-20 20:15:25 +05:00
Unknown W. Brackets
edb4472927 Fix some formatting warnings. 2013-10-19 14:57:45 -07:00
Henrik Rydgard
80702109f5 Move gpu vendor detection to native with the rest of the gl init.
Also disable vertical layout for mainscreen entirely.
2013-10-16 00:48:44 +02:00
Henrik Rydgard
8b5eff3677 Only turn off filtering on color test in through mode. Should fix #4192, #4202 2013-10-15 11:59:32 +02:00
raven02
bf7c9fe631 Force Nearest when color test enabled and rendering resolution greater than 480x272 2013-10-14 17:07:45 +08:00
Unknown W. Brackets
9cbb1cb8d3 Warning fix. 2013-10-13 09:34:54 -07:00
Henrik Rydgard
e54107033d Don't crash on post-shader compile errors. 2013-10-13 12:06:55 +02:00
Unknown W. Brackets
85c013c5b6 Fix a crash in OpenGL on game shutdown. 2013-10-12 01:39:50 -07:00
Sacha
d49b4fad9a Miscellaneous changes for Blackberry. 2013-10-12 17:19:02 +10:00
Henrik Rydgard
e0b19decca Add generic "PostShader" functionality, replacing FXAA (it's one of them).
Replaces #4018, sorry DanyalZia :)
2013-10-12 02:05:55 +02:00
danyalzia
8bed8f922e fix a bug :/ 2013-10-11 19:54:26 +05:00
danyalzia
88c36b5b25 Add Auto-texture scaling
Update resource.h

Update WndMainWindow.h

Update WndMainWindow.cpp

Update ppsspp.rc

position fix

Update TextureCache.cpp

Update TextureCache.cpp
2013-10-11 18:30:06 +05:00
Henrik Rydgård
e7a9661cad Fix stupidest crash bug ever. How the hell did this work on any platform? 2013-10-10 23:32:04 +02:00
Henrik Rydgard
b832508c4b Let's put the stencil parameters in the right order.. 2013-10-10 21:41:00 +02:00
Henrik Rydgard
5c8a74d911 Stencil rectangle clears: Take the value from the second vertex. 2013-10-10 21:36:32 +02:00
Henrik Rydgård
ae94e5c078 Must reset lastShader after swtiching shaders outside the "framework". 2013-10-10 20:11:57 +02:00
Henrik Rydgård
d696e5b02f Try a different heuristic for the bezier subdivision factor 2013-10-10 17:49:29 +02:00
raven02
7bf6f6411c Set stencil ref value to 255 (8 bitplanes) 2^8-1=255 2013-10-10 21:59:37 +08:00
Henrik Rydgard
5c3f6bae25 Prescale UV bugfixes 2013-10-09 23:09:16 +02:00
Henrik Rydgård
95fda8dffa Set line width in constructor too. 2013-10-09 19:01:28 +02:00
raven02
23b817f86c Use glLineWidth/glPointSize to specify the width of rasterized lines and size of points. 2013-10-09 19:01:21 +02:00
Henrik Rydgård
39d28c27e2 Update native with gl shutdown fix (helps orientation change).
This also adds some logging that helped me figure things out.
2013-10-09 16:09:16 +02:00
Henrik Rydgård
6d6ea77df2 Add comments (speedup plans for GLES) and reformat a bit (no changes) 2013-10-09 11:56:46 +02:00
Henrik Rydgård
ab759a9350 If bPrescaleUV is enabled, no need to flush on change of these params.
Also disable the QCOM hint, not sure it does any good at all.
2013-10-09 10:44:12 +02:00
Henrik Rydgård
31f5610292 Disable the glTexStorage2D path for now, too many issues. 2013-10-09 09:44:23 +02:00
Henrik Rydgard
4c2c015774 Expose the experimental "bPrescaleUV" as "Texture Coord Speedhack"
It's actually quite beneficial in some games, can substantially reduce
glUniform4fv calls.

Also throw in a second shot at glDrawRangeElements.
2013-10-08 22:59:40 +02:00
Henrik Rydgard
7a0b1e40c6 Update native (making GLES3 features possible on desktop). Minor optimization. 2013-10-08 21:50:43 +02:00
Henrik Rydgård
0a4750909e Try to avoid unnecessary calls to glEnable/DisableVertexAttribArray 2013-10-08 17:47:47 +02:00
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
f645988b8f More precision annotations in shader generators, other microoptimizations 2013-10-07 20:15:00 +02:00
Unknown W. Brackets
a0d84d45cc Flip the texture preview when it's a framebuffer. 2013-10-07 00:38:46 -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
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
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
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
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
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
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
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
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
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
Henrik Rydgard
01def3b6cc Missed these 2013-09-21 23:44:11 +02:00
Henrik Rydgard
82e5787bbe Preparation for proper spline/bez: Convert control points to a simple format.
The bezier/spline code will no longer need to handle morph and splines,
when it's finally written. This is done by pre-skinning in software and
pre-decoding to get rid of the morph.
2013-09-21 23:37:14 +02:00
Henrik Rydgard
c733f7a7ab Curious about what games use morph, so let's report. 2013-09-21 21:22:13 +02:00
Henrik Rydgard
5bdb9e976b Track copies of framebuffers in ram created through sceDmacMemcpy, so that we can display them.
Fixes MotoGP while also, in effect, committing #3859.
Removes the horrifying ramDisplayFramebufferPtr hack.
2013-09-21 18:53:55 +02:00
raven02
bdb9bcb27a Keep using the old report format 2013-09-21 10:13:30 +08:00
raven02
ed6e4b7764 Simplify the exact match return condition by inverse it . 2013-09-21 09:56:32 +08:00
raven02
83bac402c4 Replace them with GE_CMD_UNKNOWN_XX 2013-09-20 21:10:32 +08:00
raven02
c7f830f575 Simplify AA lines 2013-09-20 14:41:52 +08:00
raven02
010c2a087e Add WARN_LOG_REPORT_ONCE for unknown GE commands 2013-09-20 14:30:33 +08:00
raven02
f4b097ca49 Set GE_CMD_SCISSOR1/2 with FLAG_EXECUTE 2013-09-20 14:16:17 +08:00
raven02
ec00b335f2 Add WARN_LOG_REPORT_ONCE for unsupported BJUMP/BOUNDINGBOX 2013-09-20 14:04:45 +08:00
The Dax
66d328175c Fix stupid typo. 2013-09-19 16:10:18 -04:00
The Dax
9dbcc282ff USING_GLES2 platforms: Fix build and fix a warning on Android. 2013-09-19 16:06:39 -04:00
Henrik Rydgård
7de9da10d4 Merge pull request #3833 from raven02/patch-16
Regression fix : Revert #3754
2013-09-19 12:00:27 -07:00
Henrik Rydgård
93f73be0bd Merge pull request #3800 from raven02/patch-10
Attach CLUT framebuffer only in buffered mode while memory mode should ...
2013-09-19 11:45:21 -07:00
Henrik Rydgård
36fe1efcc6 Merge pull request #3840 from raven02/patch-19
Should be in VRAM so | 0x04000000
2013-09-19 11:41:33 -07:00
raven02
aea9ecae4b GLES : gstate_c.framebufChanged = true for sccisor as well 2013-09-20 01:48:43 +08:00
raven02
568a93d938 Should be in VRAM so | 0x04000000 2013-09-20 01:28:14 +08:00
raven02
a3120e0bbf GLES: Add memory valid check for vertex address 2013-09-19 21:09:59 +08:00
raven02
5d2efda98f Regression fix : Revert #3776 2013-09-19 12:24:07 +08:00
danyalzia
f1ca139444 Fixes Drawing size in non-buffered 2013-09-18 12:24:27 +05:00
Henrik Rydgård
2de4db3e31 Merge pull request #3818 from unknownbrackets/headless
Headless - use auto compare, just build test list in test.py
2013-09-17 09:08:20 -07:00
Unknown W. Brackets
abe805b62a Prevent a buffer overflow on bad shader. 2013-09-17 08:40:20 -07:00
The Dax
c499719967 Put the removed include back, but only for Visual Studio 2012. 2013-09-17 10:27:06 -04:00
The Dax
156bc2613a Remove unnecessary include. 2013-09-17 10:27:06 -04:00
The Dax
d102baacd0 Prep PPSSPP for Visual Studio 2013. 2013-09-17 10:27:06 -04:00
raven02
b918dfdd98 Attach CLUT in buffered mode only while memory mode should be more accurate itself 2013-09-17 09:55:52 +08:00
Ced2911
b7aa10efc7 [gpu] move GetIndexBounds to common 2013-09-16 17:04:06 +02:00
raven02
8c3a89019b GE_BLENDMODE_ABSDIFF : Replace it using GL_MAX 2013-09-16 20:48:33 +08:00
Henrik Rydgard
83f39fdaa6 Report the combination of bezier/spline + morph/skinning to see if it happens 2013-09-16 09:01:20 +02:00
Henrik Rydgard
5997cdf6ad Add clearly missing parenthesis, see #3776.
Update contributors list.
2013-09-16 08:09:27 +02:00
Unknown W. Brackets
ad4bd8ed74 softgpu: small optimization, precompute tex info. 2013-09-15 21:39:28 -07:00
Unknown W. Brackets
f43997a47f Update bufw handling in all gpus.
This fixes the softgpu as well, at least.
2013-09-15 21:27:13 -07:00
Unknown W. Brackets
8ca31f7652 Round texture bufw down to nearest 16 byte mult. 2013-09-15 20:06:41 -07:00
Henrik Rydgård
b33f309228 Merge pull request #3767 from raven02/patch-7
Attemp to fix Kingdom Heart , Valkyrie Profile & Tales Of Phantasia
2013-09-15 16:03:15 -07:00
Henrik Rydgård
a7d0ea586f Merge pull request #3776 from raven02/patch-9
Allow attach valid FB in FB_BUFFERED_MODE only (exactMatch)
2013-09-15 04:54:48 -07:00
Henrik Rydgard
cc6681cd0b Compile Ced's DX9 GPU on Windows. Not hooked up yet.
This needs work, has several problems that must be fixed to run on Windows.

Ced, you'll have to fix up your xb project file a bit, sorry.
2013-09-15 12:52:44 +02:00
raven02
cda902f02a Attemp to fix Kingdom Heart , Valkyrie Profile & Tales Of Phantasia 2013-09-15 18:00:56 +08:00
raven02
500c401fb7 Allow attach valid FB in FB_BUFFERED_MODE only (exactMatch) 2013-09-15 17:28:33 +08:00
Henrik Rydgård
3101f100ce Merge pull request #3774 from raven02/patch-8
Zeroize destination alpha as well when stencil test disabled.
2013-09-15 01:42:01 -07:00
Henrik Rydgård
8c9b593824 Merge pull request #3770 from unknownbrackets/softgpu
Crashes/cleanup in softgpu, fix a couple warnings, remove some unused gstate_c
2013-09-15 00:25:13 -07:00
raven02
b3bac26265 Only zeroize dst alpha when both stencil and depth testing disabled. 2013-09-15 14:10:57 +08:00
raven02
ecdc82fb19 Zeroize destination alpha as well when stencil test disabled. 2013-09-15 12:49:28 +08:00
Unknown W. Brackets
16fc684578 Don't clear the shader cache on savestate.
Well, it's small, but there should be no point.
2013-09-14 20:32:37 -07:00
Unknown W. Brackets
50e9e45d65 Check version in each DoState() func.
They bail on PointerWrap error or bad version.
2013-09-14 20:23:03 -07:00
Unknown W. Brackets
26f935bbe5 Bypass vertex decoder z scaling.
Everything is compared against the u16 value.  This should be correct for
throughmode at least.
2013-09-14 15:48:11 -07:00
Unknown W. Brackets
68f61e5071 Remove some unused gstate_c values. 2013-09-14 14:36:06 -07:00
Unknown W. Brackets
7b2dea4429 Use accessors for offsetx/y. 2013-09-14 11:06:48 -07:00
Unknown W. Brackets
40e3e8e930 Use a gstate enum, report unhandled blend mode. 2013-09-14 07:36:43 -07:00
raven02
8ccaa733b9 Use and applu new bool , doShadeMapping 2013-09-14 14:29:37 +08:00
raven02
ef2399d5b3 Use GE state accessor more often : gstate.isSkinningEnabled() 2013-09-14 14:11:25 +08:00
raven02
772329a553 Place in the two frames skip logic for FB to memory 2013-09-13 22:05:00 +08:00
raven02
0046357170 Fix some missing/black screens in FBO to memory mode 2013-09-12 05:50:03 +08:00
raven02
f687d704f9 Few fbo check for fbo_bind() 2013-09-12 04:59:36 +08:00
Henrik Rydgård
d617a1079d Merge pull request #3691 from raven02/patch-20
Add and apply gstate.getTextureDimension(level)
2013-09-11 13:23:14 -07:00
Henrik Rydgard
91f9161d76 Fix some bugs found in reports in the Android crash reporting console 2013-09-11 22:21:32 +02:00
raven02
50edfb75d0 Add reporting for color test function 2013-09-10 09:20:50 +08:00