Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

softgpu: Avoid fast path in another wrong case #16101

Merged
merged 4 commits into from
Sep 25, 2022

Conversation

unknownbrackets
Copy link
Collaborator

I double checked more of the state this time, hopefully there's not more. Easier to look at commit-by-commit because I moved some functions around to where they belong.

This was from checking Kurohyo. The bloom effect it does when you encounter an enemy, etc. was the wrong color, because we were going through the fast 5551 path for a fixed ONE + ONE blend, and it was picking only the source color.

I checked this against a Darkstalkers / Vampire Chronicle frame, and it should still be fast (it might even be faster.)

Separately, the triangle strip code was not ending properly when there were triangles or non-flat rectangles at the end of a strip. Wild Arms XF has a good case for this.

-[Unknown]

Seen in Kurohyo.  Missed that the alpha blend check essentially means only
standard blending can work.
They were duplicated, and better to organize them according to state.
Since it only supports multiply and add, let's just stick with that.
Seen in Wild Arms XF shop menu.
@hrydgard
Copy link
Owner

Ah, so much to check... And nice optimization!

@hrydgard hrydgard merged commit 8a4147c into hrydgard:master Sep 25, 2022
@unknownbrackets unknownbrackets deleted the softgpu-fixes branch September 25, 2022 15:03
@ghost
Copy link

ghost commented Sep 27, 2022

Changing display resolution in Darkstalker.

Record_2022-09-27-13-15-56.mp4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants