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

Rendering issue with tornado in Lunar Silver Star #17451

Closed
hrydgard opened this issue May 11, 2023 · 1 comment · Fixed by #17452
Closed

Rendering issue with tornado in Lunar Silver Star #17451

hrydgard opened this issue May 11, 2023 · 1 comment · Fixed by #17452
Labels
GE emulation Backend-independent GPU issues
Milestone

Comments

@hrydgard
Copy link
Owner

hrydgard commented May 11, 2023

Thanks xMoJox12 for reporting on discord!

Happens on PC, all backends.

1.15:
image

1.14.4:
image

Frame dump:

ULUS10482_1.zip

@hrydgard hrydgard added the GE emulation Backend-independent GPU issues label May 11, 2023
@hrydgard hrydgard added this to the v1.15.4 milestone May 11, 2023
@hrydgard
Copy link
Owner Author

hrydgard commented May 11, 2023

This turns out to be fallout from #17032 - was expected we'd run into something eventually...

The game uses the blend mode add: 2.0 * src.a, 1.0 - 2.0 * dst.a which isn't supported by non-PSP GPUs, so we go on the fallback path where we copy the framebuffer and blend in the shader, and we'd really need to copy between every draw here.

I think we can save the optimization in Dante's Inferno by only "preserving" the copied framebuffer if we did the copy because of overlap, and not in case of weird blend modes. Will fix for 1.15.4.

hrydgard added a commit that referenced this issue May 11, 2023
…es for overlap

Fixes #17451, while also keeping the Dante performance fix from #17032.

Of course, it's possible that something else could slow down now... But
hopefully not. This could also fix other problems.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
GE emulation Backend-independent GPU issues
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant