Commit Graph

1279 Commits

Author SHA1 Message Date
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
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