PPFX Shaderpack | 1.03.29 | SSDO GI and much more!

  • Euda
  • Topic Author
More
9 years 4 weeks ago - 9 years 3 weeks ago #1 by Euda PPFX Shaderpack | 1.03.29 | SSDO GI and much more! was created by Euda
E UDAS PPFX S HADERPACK


So after a lot of coding, I'd like to present and release my bundle "PPFX" which I intent to provide high-quality, high-performance post-processing shaders. As I'm limited to my own PC for testing, it would be great to find some people here helping me to evade possible bugs. However, I did not encounter any bug for this release.


Feature list:

Approximated Global Illumination in Image Space via SSDO (Screen Space Directional Occlusion). This is basically an approach for Ambient Occlusion and Indirect Lighting which takes colors into account and thus simulates interacting light bouncing off geometry and indirectly illuminating the scene. The effect may greatly increase the scene's plausibility. While some optimizations are done at the moment and the effect runs with an acceptable quality, there are still many optimizations that I planned for future releases. If you'd like to know exactly how the effect works, I suggest you take a look at Tobias Ritschels paper from 2008.

Highly customizable, high-performance bloom: This bloom provides a lot of parameters to play with, thresholding is done "correctly" without hue-shifts as in other bloom-approaches and is capable of very high radius'.

Godrays: The standard Nvidia GPUGems implementation of Screen-space godrays (also called 'volumetric light scattering'). As it looks too coarse if you chose a low sample amount, a post-blur is planned for future releases.

Tonemap: Several tonemap algorithms. As bloom yields HDR colors, you have the full control over how the bloom is finally mixed with the image. Do you prefer a bright, high-contrast and vivid look or a dark scene with bright patches? Play around with the values, using one of currently three techniques. Of course the collection will be filled in future releases as I have planned a local-tonemapping approach for the next weeks.
Last edit: 9 years 3 weeks ago by Euda.
The following user(s) said Thank You: crosire, JPulowski, CeeJay.dk, SunBroDave, NattyDread, Nekrik, Midhras, pancakeman, Alex_outer, SpinelessJelly and 26 other people also said thanks.

Please Log in or Create an account to join the conversation.

  • Euda
  • Topic Author
More
9 years 4 weeks ago #2 by Euda Replied by Euda on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!
Unsharp Mask: Basically a common method to sharpen images. Two methods available: Edge sharpening or a local contrast enhancement. Wikipedia has well explanations regarding that topic: en.wikipedia.org/wiki/Unsharp_masking

Further effects (descriptions are coming soon ... :> ):

Filmgrain
Vibrance
LiftGammaGain
Technicolor 3-Strip (my own approach based on the Photoshop 3Strip-LUT)
Lensdirt
Letterbox
Alternative Gamma Decoding


Effects coming soon (descriptions are coming soon ... :> ):

Histogram equalization
Further Ambient Occlusion/Indirect Lighting/Global Illumination approaches as HBAO, Alchemy AO etc.
"Borderlands"-Shader: Fake Cel-Shading combined with bilateral filtering and further methods to simulate the look of 2K Games' fantastic franchise.
Depth-based heatwaves.
Vignette (an essential feature, just never needed it so it is still left to implement)
Depth of Field
Anamorphic Lens Flares
Many further tonemappers, local and global
A lot of SweetFXy-stuff to customize your colors
The following user(s) said Thank You: Alex_outer, Predalienator, Michael35699

Please Log in or Create an account to join the conversation.

  • Euda
  • Topic Author
More
9 years 4 weeks ago - 9 years 3 weeks ago #3 by Euda Replied by Euda on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!
______________________________________________________________

HOW TO INSTALL:
Make sure to have the latest version of ReShade installed in your game directory. Then, just put the 'ReShade.fx' file and 'ppfx'-folder (from the mod archive you can download below) in the same directory and start your game. You can simply enable & disable or change parameters of the effects in the "ReShade.fx"-file.

______________________________________________________________

Here is the download of my initial release, followed by screenshots. If you've any questions or cool ideas for effects to add, ask here in the thread. Besides, you would honestly contribute to the mod's development if you report bugs you have found here or via PM. Thanks in advance for that. :)

D OWNLOAD: www.mediafire.com/download/8wuszra3alcd1...Shade+-+1.03.29b.rar
__________

Screen-Space Global Illumination (SSDO) in Watch_Dogs:
[IMG
[IMG
[IMG
[IMG

Further shots from Borderlands 2, GTA San Andreas and Watch_Dogs:
[IMG
[IMG
[IMG
[IMG
[IMG
[IMG

___________________________________________________


Greets & enjoy!
- Euda
Last edit: 9 years 3 weeks ago by Euda.
The following user(s) said Thank You: crosire, Alex_outer, TinchO, jmp909, Marty

Please Log in or Create an account to join the conversation.

  • jmp909
More
9 years 4 weeks ago #4 by jmp909 Replied by jmp909 on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!
We are spoiled for choice now! I will check it out

been using ME so far so I hope there's going to be a way to integrate shaders in a modular fashion eventually! so we can pick and choose between our favourite bits of each.

Please Log in or Create an account to join the conversation.

  • TinchO
More
9 years 4 weeks ago #5 by TinchO Replied by TinchO on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!
I was not expecting something like this :O
Very interesting, Is this official?

Please Log in or Create an account to join the conversation.

  • crosire
More
9 years 4 weeks ago - 9 years 4 weeks ago #6 by crosire Replied by crosire on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!

TinchO wrote: I tried with ReShade 0.15.0 and 0.16.0 check below the log

Change the file encoding to ANSI, looks like it's saved in an UTF + BOM encoding on your end, which ReShade does not understand.
Last edit: 9 years 4 weeks ago by crosire.
The following user(s) said Thank You: SpinelessJelly, TinchO

Please Log in or Create an account to join the conversation.

  • TinchO
More
9 years 4 weeks ago #7 by TinchO Replied by TinchO on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!
@crosire
Got it! Thank you so much

Please Log in or Create an account to join the conversation.

  • SpinelessJelly
More
9 years 4 weeks ago #8 by SpinelessJelly Replied by SpinelessJelly on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!
Reporting back from Alan Wake (after sorting that UTF thingy, argh). Everything seems to be working well - effects load successfully, though frequently followed by this message "warning X3571: pow(f, e) will not work for negative f, use abs(f) or conditionally handle negative values if you expect them". Global Illumination looks very interesting but it certainly impacts performance. Now I need to get out of this forest to check your godrays - thank you for sharing your shaders with us.

Please Log in or Create an account to join the conversation.

  • Marty McFly
More
9 years 4 weeks ago - 9 years 4 weeks ago #9 by Marty McFly Replied by Marty McFly on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!
Line 366
"[unroll]" is extremely ineffective and compilation time goes through the roof, replace with "[loop]" for way, way better compilation time.

Line 412 and 443
pxInput /= sampleSum;
Better is:
pxInput /= max(0.000001,sampleSum);
Because if you set the blur radius to 0, it's a division through 0.
Last edit: 9 years 4 weeks ago by Marty McFly.

Please Log in or Create an account to join the conversation.

  • Euda
  • Topic Author
More
9 years 4 weeks ago - 9 years 4 weeks ago #10 by Euda Replied by Euda on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!
Planned to do some performance tests regarding [unroll] anyway. At least in some cases it should affect performance, I'll take a look at the fxc/HW asm via AMD PerfStudio this evening.

IMO it's users own fault if they set blurRadius' to 0 instead of just disabling the Blur feature. I won't increase instructions and ruin structure for such decisions.
Last edit: 9 years 4 weeks ago by Euda.

Please Log in or Create an account to join the conversation.

  • Ganossa
More
9 years 4 weeks ago #11 by Ganossa Replied by Ganossa on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!
You can check on boundaries on your pre-processor constants with pre-processor commands, such as

#if (blur == 0.0f)
#undef blur
#define blur 1.0f
#endif

This will cost you no instructions during runtime.
The following user(s) said Thank You: Euda

Please Log in or Create an account to join the conversation.

  • Euda
  • Topic Author
More
9 years 4 weeks ago #12 by Euda Replied by Euda on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!
Still an aspect left preventing me from doing this: Structure-- thanks anyway. ;)

Post will be updates with some more screenshots this evening, development will continue at the weekend with a lot of time due to vacation.

Concerning the GI/SSDO I have some tricks which should greatly improve performance and quality. Very next shaders may be a local tonemap, fake Cel-Shading and heatwaves. Also thinking which approach to chose for DOF. Stay tuned :)

Please Log in or Create an account to join the conversation.

  • Marty McFly
More
9 years 4 weeks ago #13 by Marty McFly Replied by Marty McFly on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!
Local tonemapping without interpolation in time delta will flicker constantly and is extremely annoying for the eyes, trust me with that. Oh and I hope you don't mind but I already implemented heat waves and cel shading in newest ME beta build :S

Please Log in or Create an account to join the conversation.

  • Euda
  • Topic Author
More
9 years 4 weeks ago - 9 years 4 weeks ago #14 by Euda Replied by Euda on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!

Marty McFly wrote: Local tonemapping without interpolation in time delta will flicker constantly and is extremely annoying for the eyes


IIRC it is possible for us to write to a RenderTarget at the end of the shaderprogram and access this texture from anywhere in the shader. Time adaption is my plan, otherwise it'll look strange and may just appear nice on screenshots.

Marty McFly wrote: Oh and I hope you don't mind but I already implemented heat waves and cel shading in newest ME beta build :S


Why should I? Though I admit it was slightly frustrating when I saw you teasing the same method I lost much sleep over for a week (including some SSAO experiments I first did), for whom are we doing this? Reputation? Nope, it's the community and great visuals.

What is your approach to do heatwaves? Did not waste a lot of thoughts on it yet, my basic idea was to combine depth and some temporally fading txcoord-shifts using the timer. Cel shading will be a depth-based/laplace/sobel + bilateral filter and whatever method I will find to create comic-like visuals.
As said above, coding will continue at the weekend– too much coding this month. :pinch:
Last edit: 9 years 4 weeks ago by Euda.
The following user(s) said Thank You: mws432

Please Log in or Create an account to join the conversation.

  • Marty McFly
More
9 years 4 weeks ago - 9 years 4 weeks ago #15 by Marty McFly Replied by Marty McFly on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!
Yes that's right that we can access previous frames but I dropped this idea due to performance reasons, too many textures to be processed at once. I recommend to save only the calculated average brightness in an extremely low res texture, otherwise the sheer amount would flood the video memory.
And what did you mean with teasing which method?
My approach on heat haze (just found out that is has to be heat haze and not heat wave, I was wondering why I only found news reports about hot weekends when I googled it) is a texture that I use as normal map to distort texcoords for source texture sampling and that's shifted over screen with the timer. Also something needed is chromatic abberation because different wavelengths of light are refracted differently by a transparent medium.
Last edit: 9 years 4 weeks ago by Marty McFly.

Please Log in or Create an account to join the conversation.

  • Kleio420
More
9 years 3 weeks ago - 9 years 3 weeks ago #16 by Kleio420 Replied by Kleio420 on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!

Euda wrote:

E UDAS PPFX S HADERPACK


So after a lot of coding, I'd like to present and release my bundle "PPFX" which I intent to provide high-quality, high-performance post-processing shaders. As I'm limited to my own PC for testing, it would be great to find some people here helping me to evade possible bugs. However, I did not encounter any bug for this release.


Feature list:

Approximated Global Illumination in Image Space via SSDO (Screen Space Directional Occlusion). This is basically an approach for Ambient Occlusion and Indirect Lighting which takes colors into account and thus simulates interacting light bouncing off geometry and indirectly illuminating the scene. The effect may greatly increase the scene's plausibility. While some optimizations are done at the moment and the effect runs with an acceptable quality, there are still many optimizations that I planned for future releases. If you'd like to know exactly how the effect works, I suggest you take a look at Tobias Ritschels paper from 2008.

Highly customizable, high-performance bloom: This bloom provides a lot of parameters to play with, thresholding is done "correctly" without hue-shifts as in other bloom-approaches and is capable of very high radius'.

Godrays: The standard Nvidia GPUGems implementation of Screen-space godrays (also called 'volumetric light scattering'). As it looks too coarse if you chose a low sample amount, a post-blur is planned for future releases.

Tonemap: Several tonemap algorithms. As bloom yields HDR colors, you have the full control over how the bloom is finally mixed with the image. Do you prefer a bright, high-contrast and vivid look or a dark scene with bright patches? Play around with the values, using one of currently three techniques. Of course the collection will be filled in future releases as I have planned a local-tonemapping approach for the next weeks.

never mind what im trying to do will never work, due to people being bad online haxors using squard red boxs cause they have depth buffer access
Last edit: 9 years 3 weeks ago by Kleio420.

Please Log in or Create an account to join the conversation.

  • crosire
More
9 years 3 weeks ago #17 by crosire Replied by crosire on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!

Kleio420 wrote: never mind what im trying to do will never work, due to people being bad online haxors using squard red boxs cause they have depth buffer access

:huh:

Please Log in or Create an account to join the conversation.

  • Marty McFly
More
9 years 3 weeks ago #18 by Marty McFly Replied by Marty McFly on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!
ESP Boxes cannot be done with depth buffer info only, you need world view projection matrices and info about other player position which cannot be retrieved on a generic way and is not the purpose of Reshade at all.
The following user(s) said Thank You: KoolKoala

Please Log in or Create an account to join the conversation.

  • Kleio420
More
9 years 3 weeks ago - 9 years 3 weeks ago #19 by Kleio420 Replied by Kleio420 on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!

crosire wrote:

Kleio420 wrote: never mind what im trying to do will never work, due to people being bad online haxors using squard red boxs cause they have depth buffer access

:huh:


games i would like to see depth buffer access on i cant , my post was a joke making fun of it cause it really is silly ,doesnt reshade detect if the game is online and disable depth buffer access ?

example one of the old reshade updates 12/13 i believe used to work fully on evolve now i no longer have depth buffer effects work.This isnt the only game mmo games would be great to have access not ever mmo looks good tbh they look really bad in my view
Last edit: 9 years 3 weeks ago by Kleio420.

Please Log in or Create an account to join the conversation.

  • crosire
More
9 years 3 weeks ago - 9 years 3 weeks ago #20 by crosire Replied by crosire on topic PPFX Shaderpack | 1.03.25 | SSDO GI and much more!

Kleio420 wrote: doesnt reshade detect if the game is online and disable depth buffer access

Correct. Writing a shader that uncloacks players in Crysis isn't hard with just depthbuffer access and that's just a simple example.
But how is that related to the PPFX shaderpack if I may ask? =)
Last edit: 9 years 3 weeks ago by crosire.
The following user(s) said Thank You: KoolKoala

Please Log in or Create an account to join the conversation.

We use cookies
We use cookies on our website. Some of them are essential for the operation of the forum. You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.