Commit Graph
46 Commits
Author SHA1 Message Date
The Dax 8ab734d516 Restructure the hack to be more correct, and add support for double texture coordinates. Fixes #2314.
Also address various coding style issues.
2013-06-26 16:02:52 -04: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
Henrik Rydgard d96c588288 Cache vertex decoders. No big boost now, but opens for optimizing them more, and lets us keep stats of the most common ones. 2013-03-24 12:28:42 +01:00
Henrik Rydgard 57e82619ca Fix some glitches that were caused by the MH glitch fix (wrong prim..). Also some cleanup. 2013-03-24 01:13:02 +01:00
Henrik Rydgard b4977610cc Smarter draw call joining, fixing MH vertex glitches. Thanks bovine for identifying the issue. 2013-03-23 13:12:52 +01:00
Henrik Rydgard 7995d1418c Safer float->u16 cast. 2013-02-21 19:10:30 +01:00
Henrik Rydgard 690ebb2e58 Proper fix for the annoying through-mode depth issues. 2013-02-20 22:49:41 +01:00
Henrik Rydgard 67272ec271 Scale Z to 0...1 in through mode.
(alternatively, could try setting through mode depth range to 65536..0)
2013-02-19 21:38:19 +01:00
raven02 2745bb4f14 pos[0]/[1] are signed while pos[2] is unsigned in 2D transform 2013-02-20 01:37:19 +08:00
raven02 9e38174b14 Clamp pos[2] when transform 2D only 2013-02-20 01:11:26 +08:00
raven02 2ed1b9ee0b Minor cleanup and use byte(b)/short(s)/float(p) 2013-02-20 00:20:00 +08:00
raven02 9eaf58773b Add 8 bit for weight type 1 2013-02-19 22:55:46 +08:00
raven02 5ba1775572 pos[2] larger than 65535 is clamped to 65535 and not 0 2013-02-19 22:39:38 +08:00
oioitff 83b2849192 pos[2] is limited between 0 and 65535
fix the black screen issue for Toaru Majutsu no Index, and Toaru Kagaku no Railgun.
2013-02-19 19:17:15 +08:00
raven02 2bf958b06f Stylish the case DEC_U8_2/DEC_U16_2/DEC_FLOAT_2 2013-02-17 20:50:17 +08:00
Henrik Rydgard c695d8dbf1 Yet another UV fix 2013-02-15 20:17:47 +01:00
Unknown W. Brackets d0ab1c8ffc Set VertexReader's vtype_ to prevent oddness. 2013-02-14 08:32:37 -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 80f4dc4e3a Fix issue with half sized skinned objects in SW transform. 2013-02-06 19:04:28 +01:00
Henrik Rydgard bf7ad9e1c9 Also don't convert 16-bit bone weights to float. Fixes a bug from the last similar change. 2013-02-05 18:02: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 8ff96bbcd8 Defer vertex decoding until flush. Track draw calls so that they can be cached later. 2013-01-19 17:05:50 +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 f8ae18a130 "Fix" bezier the old way (puzzle bobble works again at least). 2013-01-04 09:54:19 +01:00
Henrik Rydgård e2cc226d0d Just some cleanup of GPU code 2012-12-28 20:54:00 +01:00
Henrik Rydgård 1b35964445 Add support for rotated UVs of flipped RECTANGLES. Avoid using indexed
draws when unnecessary.
2012-12-26 08:54:33 +01:00
TMaul 976537d314 3 foats, not 3 bytes.... 2012-12-23 21:30:19 +00:00
TMaul e8f240c1d4 Fix some more possible errors
Shadowed var n in MIPSIntVFPU

Possible buffer overflow in vertexdecoder.h

fix valid address checking in sceRtc function
2012-12-23 20:51:05 +00:00
Henrik Rydgard 2e9daa5f89 All drawing is now indexed lists, through IndexGenerator. 2012-12-21 18:46:15 +01:00
Henrik Rydgard 52cf324e9e Try to fix "W1" vertex error 2012-12-21 10:19:37 +01:00
Henrik Rydgard 79bd4e3d41 Lighting fixes (sw + hw) 2012-12-20 23:28:58 +01:00
Henrik Rydgard 6a7e77ce1d Prevent crashes on bad vertex / index addresses 2012-12-20 15:07:58 +01:00
Henrik Rydgard 1b5407f505 Rewrite the vertex decoder a bit. Turn on SSE2 compiler flag etc. 2012-12-20 15:07:57 +01:00
Henrik Rydgard c4ca9b5956 Get rid of the DecodedVertex struct. 2012-12-20 15:07:57 +01:00
Henrik Rydgard 13460b7aa6 Use flexible vertex formats pre-transform. Saves memory b/w. 2012-12-19 20:21:59 +01:00
Henrik Rydgard b8d596cbec Add some infrastructure for flexible vertex formats 2012-12-19 18:35:37 +01: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
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
Florent Castelli 2f39496ec5 Use ambient material color when no color in the vertex
Fixes color in celshading demo
2012-11-25 17:45:50 +01:00
Henrik Rydgard 7c9107030d Speed up T&L by only transforming/lighting each vertex once, for indexed draws 2012-11-16 16:19:37 +01:00
Henrik Rydgard e5c6cf965b Fixes and optimizations to vertex decoding and lighting.
Motorcycles are now visible in MotoGP.
2012-11-16 15:16:14 +01: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