My latest and also last attempt in “shadow mapping” for a while: “Variance Shadow Mapping”. I definitely need a vacation from shadows. The routine uses chebyshev probabilist prediction (mean and variance) to approximate a shadow penumbra. The intention was to work around the massive performance hit of “Percentage Closer Filtering”, but to maintain or even surpass PCF quality wise, but I’m not quite happy with the result of this routine. The generated softshadows have a lot of really “strange” artifacts, though I can’t find any serious flaw in the implementation. Anyway here’s the setup code: GL3_ShadowMapping_VarianceShadowMapping.java and the corresponding (multipass) shaders: .vs/.vs/.vs .fs/.fs/.fs

Lately the tides of war aka “shadow mapping” turned in my favor and I achieved another stage win by successfully implementing “Percentage Closer Filtering Soft-Shadows” (PCF-SS). The routine is quite foreward. It takes several samples from a depth texture (transformed to light pov) filter kernel and averages them. The result is some kind of “penumbra zone” wich is an attenuation of the aliasing. The bigger the kernel, the bigger the penumbra, the softer the shadows. The depth texture convolution may kill ur GPU but will result in visually soft shadows. Full sourcecode can be found on Github: GL3_ShadowMapping_PercentageCloserFiltering.java Shaders: No shaders this time as they are dynamically generated in the Java code.

NIGHTNIGHT by DEDDY