| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
| |
* Quantize light frustum calculations
Reduces shadow flicker
* Fix function name to match conventions
|
|
|
|
|
|
|
|
|
| |
* Rewrite shadow filtering for the new distortion
* Calculate penumbra radius using a single sample
* Avoid peter-panning effect due to filtering of short shadows
* Add adaptive filter quality for soft shadows
* Avoid sharp shadows on surfaces without normals (e.g. plants)
* Increase default and maximum soft shadow radius
* Make line numbers in shader errors match the code
|
| |
|
|
|
|
|
|
|
|
| |
* Move shadow position calculation to vertex shaders
* Animate entire scene before rendering shadows to prevent lagging of shadows
* Remove unnecessary use of PolygonOffsetFactor
* Apply normal offset to both nodes and objects
* Rename getPerspectiveFactor -> applyPerspectiveDistortion
* Remove perspective distortion from fragment shaders
|
| |
|
| |
|
| |
|
|
|
|
|
| |
* Pass perspective distortion parameters as uniforms
* Set all perspective bias parameters via ShadowRenderer
* Recalibrate perspective distortion and shadow range to render less shadow geometry with the same quality and observed shadow distance
|
|
|
| |
* Also Disable shadows when sun/moon is hidden. Fixes #11972.
|
|
|
|
|
|
| |
Remove use of magic constants.
Apply cameraOffset
Calculate distance projected on SM plane
|
| |
|
|
|
|
| |
Fixes indirect rendering modes such as some 3D modes mentioned in #11437 and undersampled rendering.
Does not fully fix anaglyph 3d mode.
|
|
|
|
|
|
|
|
|
|
| |
Reduces stutter and freezes when playing.
* Maintains double SM and SM Color textures
* Light frustum update triggers incremental generation of shadow map into secondary 'future' textures.
* Every incremental update renders a portion of the shadow draw list (split equally).
* After defined number of frames (currently, 4), 'future' and 'current' textures are swapped, and DirectionalLight 'commits' the new frustum to use when rendering shadows on screen.
Co-authored-by: sfan5 <sfan5@live.de>
|
|
|
|
|
|
|
|
|
|
|
| |
* Adjust minimum filter radius for perspective
* Expand shadow frustum when camera FOV changes, reuse FOV distance adjustment from numeric.cpp
* Read shadow_soft_radius setting as float
* Use adaptive filter radius to accomodate for PSM distortion
* Adjust filter radius for texture resolution
|
|
Co-authored-by: x2048 <codeforsmile@gmail.com>
|