Developed a new SW sprite render function, which is used to fix
Jak and Daxter colors in Jak games and to remove the old Jak games hack
which yielded wrong colors and clashed with TC search texture in RT function.
- Remove OO_JakGames hack for palette readback from framebuffer (slow,
clashes with texture in RT TC function, clashes with Target readback logic)
- Developed new method SwSpriteRender with CPU rendering logic
- Add OI_JakGames method using SwSpriteRender for CPU palette rendering (fast,
does not clash with texture in RT TC function, no readback required)
Bonus: fps also sees an improvement in Jak games 3-5 increase.
This PR clean a bit the GameDB and add 2 fixes for:
-Ratatouille: Add vu round mode to positive to fix very minor lines appearing at certain points during the game.
tested by atomic83github
-Dog's Life and Wallace & Gromit in Project Zoo: Add vu clamping mode to extra+preserv sign to fix minor white SPS problem on characters.
Tested by discord member: LastBreath
This commit add FPU clamping fixes for Bully/Canis Canem Edit to fix the inability to take the bottle in the trophy case in Chapter 2: Hattrick vs Galloway.
Tested by atomic83github.
* Refactor build.sh. Restructure finding plugins. Remove legacy code. Add --clean-plugins option. Document --no-trans option.
Don't do setcap if dev9ghzdrk isn't being built. List dependencies if they are missing. Remove code related to zerospu2, and misc plugins we aren't building. Minor message changes.
2 pass fallback cases for the untitled scenario was mentioned in the TODO comment to be completed, added one of them. (Still doesn't seem reliable enough, but honestly when do we Also modified blank space indentation at a part to tab space to satisfy lightning boi.
Previously the blockdumps will be automatically stored in the root directory of PCSX2, added an INI option in "PCSX2_ui.ini" named "CurrentBlockdump" to modify the directory to whatever is preferred by the user. (Some people were requesting for this)
A GUI could also be added if anyone wants, but considering the popularity of this I'm not sure as blockdumps will only be used my less percentile of users and mostly by testers and developers for debugging.
It will allow to render the shadows properly.
Rendering pattern is:
Save RG channel with a kind of a TS (replaced by a copy in this hack),
compute shadow in RG,
save result in alpha with a TS,
Restore RG channel that we previously copied to render shadows.
- serials update along with a minor modification to siphon filter patches typo.
- Pac Man world 2 Timing fixes to avoid hangs at various levels. Tested by atomic83github.
- Missing VU clamping fixes for some EA sports titles. Tested by atomic83github.
Seems like Texture shuffle/depth is not handled properly in all cases so
revert the change until we fix it properly. Move it to gl level too.
Commit:
11cd6b56cd
With the sprite hack removed it was no longer possible to toggle this
hack on nvidia gpus, the toggle has been moved to Disable Safe Features.
It some issues caused by the hack in sotc, fatal frame and border offset
issues.
Added VU clamping to none for Ulitmate Ninja 2 to fix minor visual issues with lights.
- Tested by boberto5888
Added VU clamping to extra for Ulitmate Ninja 3 to fix minor visual issues with lights as well as missing QTE.
- Tested by boberto5888
Added beta trial serials.
- Tested by atomic83github
The adapter ID was needed to be passed before for a legacy DX9 hack which is no longer present, I figured it could cause a potential conflict when the adapter value stored at INI is outdated. (which is now a possibility after
lightning removed reference device)
The other alternative would be to just force set the INI value on dialog initialization to avoid unavailable values in the INI file, but that would be a rough for a person transitioning from debug build to release build using the reference device
option, so just removing this outdated variable for now, I rather doubt we'd be needing it in the future, in case we need adapter passing to subdialogs, the former suggestion needs to be implemented. Not implementing it right now since there's no need for it.