Henrik Rydgard
8aca797f21
Fix silly light direction math bug (probably no effect mostly).
2013-06-24 20:48:31 +02:00
Henrik Rydgard
916184d2f4
Optimize the most common light type, directional, by doing the normalization beforehand. May shorten some shaders below Mali's limit with luck.
2013-06-20 23:30:21 +02:00
Henrik Rydgard
e7097ca95a
Fall back to software transform when hardware transform fails. Should help Mali devices.
...
This is done per shader so the speed hit should not be as bad as turning hw transform off entirely.
Displays a red error at the top of the screen so that we don't trigger this accidentally.
2013-06-06 10:09:37 +02:00
raven02
a945cf0e13
Fix incorrect texture in Dragon Ball Z Shin Budokai 2
2013-05-31 23:00:35 +08:00
Henrik Rydgard
2d8632cd7a
Remove texture coordinate difference between HW and SW transform. Partly fixes #1963
2013-05-30 13:37:18 +02:00
Henrik Rydgard
cdef31f9fc
Turn off the use of uniform arrays in shaders as some devices don't like them, and the speedup seems to be very small if any.
2013-05-26 14:03:02 +02:00
Henrik Rydgard
9af5499b21
Optimize bone matrix updates.
2013-05-18 21:18:45 +02:00
Henrik Rydgard
1b210fab14
Use arrays and for loops in GLSL shaders for bone processing, to shrink the shaders which are becoming too big for some mobile GPUs. Might fix #1816 .
2013-05-18 20:45:52 +02:00
Unknown W. Brackets
03f3f99e39
Don't use ivec in the fragment shader.
...
Attempt at #1777 . Needs the + 0.5 to round properly on mobile.
2013-05-12 13:09:02 -07:00
Henrik Rydgård
b3355b2f7c
Mac build fix. Rename WindowZoom ini parameter to force-reset it as it
...
should always be 1 on Android for now.
2013-05-07 23:28:19 +02:00
Unknown W. Brackets
f2b4c4a0bc
Pre-round the colortest/alphatest reference val.
2013-05-07 07:52:49 -07:00
Henrik Rydgard
c04ce5a64e
Implement projective texture mapping. It's not used a great deal but good to have.
2013-04-17 21:41:47 +02:00
BeaR
fa3a1fbd52
Add support for spotlights
2013-04-09 18:26:06 +02:00
Henrik Rydgard
5427f20b90
Don't "DirtyShader" at the end of frame, instead just "stop". Fixes issues caused by vertex arrays left enabled still hanging around.
2013-04-07 23:31:04 +02:00
Unknown W. Brackets
afbde31b42
Add some OpenGL related reporting errors.
2013-03-24 09:45:43 -07:00
Henrik Rydgard
b1108f3290
Respect the size of the current FBO when drawing. Some cleanup.
2013-03-16 00:40:37 +01:00
Henrik Rydgard
bc15617392
Make un-buffered rendering much smarter, removing flicker.
...
This turns it into a very viable option for many games. You do lose some FX
but it can as a result even be used as a workaround for the massive glow
in Wipeout...
2013-03-03 13:00:21 +01:00
raven02
d99ca71a47
Add u_colormask and use it in enableColorTest
2013-02-25 05:45:35 +08:00
Henrik Rydgard
28979e9250
Some work toward better FBO handling. Fixes some things, breaks some things..
2013-02-21 21:37:19 +01:00
Henrik Rydgard
eb130db387
Fix sign of depth in "Through" projection matrix. Thanks xele02. Fixes ToE, Dissidia, etc.
2013-02-20 00:13:18 +01:00
Henrik Rydgard
2301a3b49e
Flip texcoord vertically when texturing from FBO to compensate for OpenGL coordinate systems
2013-02-15 00:31:39 +01:00
Henrik Rydgard
36f49706e0
Add option to stretch to display (turns off the black bars fixing the aspect ratio).
2013-02-13 18:21:21 +01:00
Unknown W. Brackets
3503d4ed68
Clear the shader ids when clearing the cache.
2013-02-13 02:10:51 -08:00
Henrik Rydgard
6b3ddae554
Fix UV error introduced in previous commit
2013-02-06 21:38:19 +01:00
Henrik Rydgard
aaf00e047b
Don't convert texcoords to float either.
2013-02-06 20:30:10 +01:00
Henrik Rydgard
bdc467769e
Some shader and vertex format optimizations
2013-02-05 01:37:00 +01:00
Henrik Rydgard
bf51291527
Don't translate bone weights to floats unnecessarily. Minor optimization to ApplyShader, pushing it down the profile from 2% to 0.5% in Wipeout.
2013-02-04 23:10:40 +01:00
Henrik Rydgard
e04f5156ee
Fix a few graphics issues, optimize shader ID generation (fewer shaders)
2013-01-22 22:03:41 +01:00
Henrik Rydgard
1b1a275dcc
GPU "dirty" optimization, wip vertexcache
2013-01-20 13:15:46 +01:00
Henrik Rydgard
7271e3fcd5
Fix fog and stencil buffer clearing. The latter fixes the sky in MotoGP.
2013-01-14 20:44:11 +01:00
Henrik Rydgard
03eacd1af3
Save 16K.
2013-01-07 13:00:28 +01:00
Henrik Rydgard
a1bf5a2a10
Save on gl[Enable/Disable]VertexAttribArray calls.
2013-01-06 23:50:05 +01:00
Henrik Rydgard
d663e28bde
More work and optimization. Still not quite there.
2012-12-21 21:49:09 +01:00
Henrik Rydgard
4c23d668e1
Cleanup and reorganize gpu code a little
2012-12-21 16:50:14 +01:00
Henrik Rydgard
4bf2e52623
HW transform: Avoid 4x3 matrices for GLES 2.0 compat. Add option to turn hw transform on.
2012-12-21 11:08:54 +01:00
Henrik Rydgard
79bd4e3d41
Lighting fixes (sw + hw)
2012-12-20 23:28:58 +01:00
Henrik Rydgard
c3b778daab
More work on hw transform.
2012-12-20 18:31:21 +01:00
Henrik Rydgard
4f376a2c34
Hardware vertex transform, preliminary and optional. No lighting yet. Disabled until it works right...
2012-12-20 15:07:58 +01:00
Henrik Rydgard
b8d596cbec
Add some infrastructure for flexible vertex formats
2012-12-19 18:35:37 +01:00
Henrik Rydgard
4046146164
Add experimental wireframe mode for debugging. Fix texenv color. Code cleanup.
2012-12-19 15:14:41 +01:00
Henrik Rydgård
a0d8017c22
Fix for previous commit
2012-12-05 11:13:36 +07:00
Henrik Rydgård
700921deb3
Fix rendering on MacOSX (shader compiler very fussy...). Minor prep for hw transform.
2012-12-05 10:55:06 +07:00
Henrik Rydgard
980d13fe50
Assorted GPU fixes: Advance vertex pointer, fixes missing triangles in SPT. More logging. Separate proj matrices for through and normal mode (through matrix don't need to get updated as often). Some cleanup.
2012-11-28 13:45:22 +01:00
Henrik Rydgard
2822ce2737
Temporarily disable most of the viewport code as it broke some games. Kept the flip detection.
2012-11-26 20:38:26 +01:00
Sacha
3c903dda24
Improve portability to future platforms. Make use of new USING_GLES2 define throughout PPSSPP. Also use ARM definition where suitable. Remove some redundancy with includes.
2012-11-26 13:25:14 +10:00
Henrik Rydgard
e37a1fb1d3
Add internal 2D drawing library that goes through the Ge emulation for portability.
...
To be used for things like sceUtility* and other overlays like FPS and stats.
2012-11-18 13:04:49 +01:00
Sacha
41f5abab31
PPSSPP ported to Blackberry10
...
Now builds on Playbook and Dev Alpha
Make emulator more compatible with other OS (case sensitivity, defines, includes)
Uses Android's code paths and backend
2012-11-05 23:09:49 +10:00
Henrik Rydgard
64cc573703
Switch to "GPL 2.0 or later" for various reasons. I wrote most of the code I imported from Dolphin (which is GPL2-but-not-later), so it should be OK.
2012-11-04 23:24:00 +01:00
Henrik Rydgard
4f7ad15758
Add snapshot of the whole source code.
2012-11-01 16:19:01 +01:00