1
0
mirror of https://github.com/blawar/GLideN64.git synced 2024-07-07 03:13:49 +00:00
Commit Graph

192 Commits

Author SHA1 Message Date
purplemarshmallow
e0face5f86 use unique values as fingerprint
this works much better
But sometimes Zelda writes values not only under but also over the
fingerprint, Link's model is lost again
2015-08-17 21:56:58 +06:00
purplemarshmallow
e617177958 fix problem with validity ckecking in Zelda OOT
problem: the game writes data below our fingerprint
solution: just check if the fingerprint is still there and ignore the
data below
2015-08-17 21:56:58 +06:00
Sergey Lipskiy
cbbd5d17de Fix crash when fb emulation enabled/disabled during gameplay, issue #601 2015-07-23 21:55:30 +06:00
Gillou68310
40da41d953 Fix framebuffer texture rectangle coordinate in GLES2 2015-07-02 10:45:52 +06:00
Sergey Lipskiy
7936e02066 Enable hack_subscreen for GLES2. 2015-06-26 19:20:44 +06:00
Sergey Lipskiy
b897c449a1 Fix shader texture uniforms update for GLES2.
Fixed issue #586.
Thanks Gillou68310 for the hint.
2015-06-23 22:19:11 +06:00
Sergey Lipskiy
68941f6cbe Optimize frame buffer copy to RDRAM:
read from pixel buffer one time per pixel.
Old code does 4 reads from the pixel buffer per pixel.

The optimization makes color buffer read circa 4 times faster.

Thanks Lars Bishop for finding the sources of the problem and for suggested solution.
2015-06-16 19:43:15 +06:00
Sergey Lipskiy
7ee974f213 Remove debug calls of isGLError() from FrameBufferToRDRAM::CopyToRDRAM. 2015-06-16 19:40:56 +06:00
Sergey Lipskiy
eb23f38934 New fix for issue #563. It does not break CBFD work. 2015-06-14 23:29:33 +06:00
Sergey Lipskiy
48959f0702 Revert "Correct coronas emulation in Perfect Dark."
This reverts commit 36fbcd5eac.

Reverted commits causes issues in CBFD. Need another approach.
2015-06-14 22:57:53 +06:00
Sergey Lipskiy
36fbcd5eac Correct coronas emulation in Perfect Dark.
Fixed issue #563.
2015-06-04 22:17:04 +06:00
Sergey Lipskiy
a25c85b3f2 Hack depth buffer attachment for GLES2. Need proper fix. 2015-06-02 18:57:54 +06:00
Sergey Lipskiy
1653069329 Correct FBO texture formats for different GL versions. 2015-06-02 18:57:24 +06:00
Sergey Lipskiy
9a991ba550 Correct FrameBufferList::renderBuffer for GLES2 2015-06-01 23:58:57 +06:00
Sergey Lipskiy
6b67ba3a57 Fix 3point texture filtering for GLES2. 2015-05-31 14:13:27 +06:00
Sergey Lipskiy
910c5de1bf Enable post-processor for GLES2. 2015-05-30 22:40:14 +06:00
Sergey Lipskiy
19c9e80b70 Correct frame buffer texture format for GLES2. 2015-05-18 13:51:16 +06:00
Sergey Lipskiy
b16dedd3f9 Fix compilation error in FrameBufferList::renderBuffer. 2015-05-18 13:51:10 +06:00
Sergey Lipskiy
7cbca30197 Disable resolveMultisampledTexture() for system without GL_MULTISAMPLING_SUPPORT 2015-05-18 13:51:10 +06:00
Sergey Lipskiy
b219997c80 Always show cfb until first dlist:
- move flag CHANGED_CPU_FB_WRITE from gSP to gDP (code refactor)
- enable CHANGED_CPU_FB_WRITE on video init.
- disable CHANGED_CPU_FB_WRITE in process display list.

many pd roms and demos use cpu rendering only
now they are supported with default settings
also detectCFB=1 now isn't needed anymore for some games

Commit is based on changes made by purplemarshmallow in #536
2015-05-18 12:55:42 +06:00
Sergey Lipskiy
d46ed98804 Fix wrong set of CHANGED_TEXTURE flag. 2015-05-13 10:22:32 +06:00
Sergey Lipskiy
49efba0ce6 Correct RDRAMtoFrameBuffer::CopyFromRDRAM -
need to update combiner's FBInfo before use.
2015-05-13 10:22:28 +06:00
Sergey Lipskiy
eabbd252f8 Change CachedTexture::frameBufferTexture type to enum.
Need to separate one-sampled frame buffer textures from multosampled ones.
2015-05-13 10:22:27 +06:00
Sergey Lipskiy
dbbb7da427 Move _isMarioTennisScoreboard() from FrameBufferList to FrameBuffer. 2015-05-13 10:22:26 +06:00
Sergey Lipskiy
663a0d76f1 Implement multisampled textures fetch in shaders.
Thanks mudlord for the idea.

Fixed Perfect Dark frame buffer effects do not work when FSAA is on. #244
2015-05-13 10:22:26 +06:00
Sergey Lipskiy
b728ab97a7 Disable multisampling related code for GLES below 3.1 2015-05-13 10:22:25 +06:00
Sergey Lipskiy
09b78ea577 Replace define GLES3 by GLES3_1 since current code is GLES3.1 compatible.
GLES3 is different.
2015-05-13 10:22:18 +06:00
Sergey Lipskiy
243e186ba2 Correct internal format for DepthBufferToRDRAM color texture. 2015-05-13 10:22:17 +06:00
Sergey Lipskiy
d3f6754cff Correct depth texture intarnal format for GLES3 2015-05-13 10:22:16 +06:00
Sergey Lipskiy
107a81d079 Don't init from/to RDRAM objects when frame buffer emulation is off. 2015-05-13 10:22:14 +06:00
Sergey Lipskiy
01807a0499 Fix FrameBuffer_CopyDepthBuffer: return false for GLES2 case. 2015-05-13 10:22:10 +06:00
Sergey Lipskiy
a02d284645 Use glTexStorage2DMultisample instead of glTexImage2DMultisample in case of GLSE3 2015-05-13 10:22:05 +06:00
Sergey Lipskiy
70b1b9ad03 Replace glMapBuffer by GLES3 compatible glMapBufferRange. 2015-05-13 10:22:04 +06:00
Sergey Lipskiy
bbc71c3f0a Fix crash in FrameBufferToRDRAM::CopyToRDRAM when current buffer is NULL.
Fixed Snowboard Kids causes segmentation fault #477
2015-05-13 10:22:01 +06:00
Sergey Lipskiy
29ab85fcc2 Fix frame buffer being bloomed twice. 2015-05-13 10:21:56 +06:00
Sergey Lipskiy
05b92c11bb Apply scissor for post-processed frame buffer area.
Fixed overexposed areas for games with black boarders.
2015-05-13 10:21:55 +06:00
Sergey Lipskiy
0c886e26c3 Limit depth buffer copy to RDRAM with top and bottom bounds of fillrect command.
Fixed regression issues #436 and #437
Issue #330 with Roadsters is fixed too.
2015-05-13 10:21:52 +06:00
Sergey Lipskiy
4d87fb6833 Impelent new fb validity check method:
copy RDRAM content to a buffer and compare by content.
2015-05-13 10:21:50 +06:00
Sergey Lipskiy
e3d8905984 Fix _isMarioTennisScoreboard() hack for (E) version. 2015-05-13 10:21:46 +06:00
Sergey Lipskiy
08513ded89 Correct Mario Tennis scoreboard hack. 2015-05-13 10:21:45 +06:00
Sergey Lipskiy
96aab6c9ad Correct Mario Tennis scoreboard hack for (J) rom.
Fixed issue #424
2015-05-13 10:21:44 +06:00
Sergey Lipskiy
52d68d1389 Move all sources to src folder. 2015-05-13 10:21:32 +06:00