Welcome, Guest.
Username: Password: Remember me

TOPIC: [SOLVED] ReShade GUI issue in DX9 games

[SOLVED] ReShade GUI issue in DX9 games 10 months 1 day ago #1

I've been using ReShade (huge thanks to the devs!) for quite a long time now, and a while ago i started writing shaders myself.

I'm currently working on a shader that adapts itself to the average luma of the frame. While working on that shader i had the idea to outsource that averaging into its own shader, where certain stats such as average luma, average color etc. are rendered to 1x1 textures. These values can then be shared across ohter shaders.

That works, but there is a really weird issue i've come across in DX9 games:
If the last (or only) executed technique has more than one render target (at a size different than BUFFER_WIDTH x BUFFER_HEIGHT) the ReShade GUI just disappears (settings window, error log, fps counter) while all enabled effects are still being processed.

I've tested that in Remember Me and Dragon Age: Origins, both show that behaviour.
Specs: Win 10 (Build 16299), i5-4590, GTX960 (driver 391.24), MSI Afterburner & RivaTuner not running

Is this caused by flawed code (it compiles without error/warning...), a bug in ReShade (guess not, OGL and DX11 work fine, and why should a shader cause this?) or just a quirk in DX9 or the game?

Here is the shader i wrote to track and recreate that issue.
When enabling all techniques one after another the last two let the GUI disappear.

Warning: Spoiler! [ Click to expand ]

I know there can be an issue that disables all effects when the overlay is not visible, but this is somewhat different.
Thanks in advance.
Last Edit: 10 months 10 hours ago by Daodan. Reason: Issue has been solved.
The administrator has disabled public write access.

ReShade GUI issue in DX9 games 10 months 22 hours ago #2

That's a bug. Nice find. It's fixed (github.com/crosire/reshade/commit/477dda...5a0e258cf0b7ad401aaa) in the next update. Thanks a lot!
Cheers, crosire =)
Last Edit: 10 months 7 hours ago by crosire.
The administrator has disabled public write access.