Author Topic: Improving the 'PCSS' shader  (Read 642 times)

A while ago I released a PCSS shader of sort; however, it's not from perfect:
-Depth search distance must be manually set (this is supposed to be automatic)
-No automatic adjustment of fudgeFactors with the light angle
-Blending between cascades not looking too good
So I need help polishing up this shader.

This is what I'm working on now, actually trying to implement it correctly:


Blockland Attempts
Latest version of the 'old' shader:
Old PCSS shader release thread


Other Implementations
NVIDIA demo pcss: - originally from "OpenGL Graphics and Compute Samples"
Some random paste with a opengl 120 implementation of PCSS:

can you do ascii shaders

can you do ascii shaders
pretty sure reshade has an ascii shader
i'm not really the guy to ask to make shaders as you can see from the OP

Made penumbra size vary width with shadow_coord.z or the cascade index (0 being closest cascade of the 4) and blending between cascades appears more tolerable.

The shader now actually does two comparisons, and may or may not be a tad bit faster. If anyone can figure out what the blocker search distance (searchDistance) is supposed to be optimally, I'll be forever grateful.
« Last Edit: August 13, 2018, 07:03:54 PM by QuadStorm »

Another PDF:
Like I said in the last post, the main issue I have now is having the blocker search distance (searchDistance) done right without having to add a variable that has to be adjusted. Blending between cascades looks alright for now, and the fudge factors, while a bit high are ok as well. is the latest version as of now, redoing the blocker search section and making it a separate function, however there's a pretty major graphics bug at a distance, which is why I made another gist instead of updating the other one.

EDIT: The distant issue is mostly gone, at the cost of far shadows being sharper than they should be.
« Last Edit: August 29, 2018, 08:28:43 PM by QuadStorm »