Welcome, Guest.
Username: Password: Remember me

TOPIC: Selective Shader effects

Selective Shader effects 1 year 3 months ago #1

Hello there.

As I understand it, Reshade works by injecting itself pretty much at the end of the rendering chain, copying the framebuffer to a vertex that fills the screen, applies a whole load of pixel shaders of our own choosing and then pushes that back to the graphics card to draw on screen.

Given my near non-existant knowledge of C++, HLSL and DirectX coding feel free to shoot me down here but would it at all be possible to have reshade inject itself such that more information was passed along to the pixel shaders. For example, say that you tell Reshade to look for all surfaces with cubemap textures applied to them, and then that is passed along to a specific effect (lets say RBM) so that only that effect is applied only to those surfaces. Can it be done or is the idea simply too much?

Thanks in advance
The administrator has disabled public write access.

Selective Shader effects 1 year 3 months ago #2

Things like these can be done for sure, it's what ENBSeries does to apply its advanced effects. The catch is, game engines differ a LOT and ReShade's purpose is to be generic, to work on any game. Even something like the depth buffer requires advanced heuristic techniques to find the right one on the majority of games, fetching such specific data like you ask for on a generic basis is impossible. ENB merely has such things developed precisely for one game and patch so ENB can only be used on the game its developed for and even a patch can break functionality.
The administrator has disabled public write access.

Selective Shader effects 1 year 3 months ago #3

I see, so it would be down to be me to implement such features on a game by game basis. Thank you for the reply, and just as a thought, if I managed to this for a game of my choosing, would I be able to use bumpmap textures to modify the z-buffer value and thus be included by the AO pass? (This was actually the idea that lead me to think more about this)
The administrator has disabled public write access.