[ℹ]
FULLNAME=Smart Shadows
PREVIEW=https://i.imgur.com/IoxnV5z.png
DESCRIPTION=This extension allows to alter shadow splits, in general or on per-track basis. Plus, it stabilizes shadow maps to reduce wobbling with seemingly static cameras (such as orbit camera).
SHORT_DESCRIPTION=Adjust shadow splits
URL=https://trello.com/c/Qbz4r8Zt/18-other-small-things

[BASIC]
; Extension
ENABLED=1 ; Active (set to 0 to disable Smart Shadows extension); 1 or 0
OPACITY=1 ; Shadows opacity (of course, only accurate shadows are the ones with 100% opacity, but if for some reason you need to tweak them, here’s the parameter); from 0 to 1, perc.
; BLUR_MULT=2 ; Blur multiplier; from 1.5 to 2.5, perc.

; Shadow cascades for interior cameras. unfortunately, with only three splits, 
; not much can be done, so if you want to increase quality or distance for shadows
; outside, you can go full Gran Turismo and set it to something like 25, 75, 200
; (that game has incredibly bad interior shadows, but with dark interiors, it’s not
; really noticeable). Also, if needed, original Kunos values are 1.3, 80, 250.
INTERIOR_SPLIT=1.3, 40, 200 ; Distances for interior

; With exterior, everything is much easier, no need to waste the whole split on 
; the interior. Original values: 5, 25, 250.
EXTERIOR_SPLIT=10, 50, 250 ; Distances for exterior

FIRST_SPLIT_ADAPTIVE=1 ; Adaptive first split (for exterior, distance will be reduced if camera is close to a car); 1 or 0

; It’s not a problem! You can just set it so with lower view angle, splits would be 
; scaled up. Here is the main value for that, with 0, there’ll be no scaling.
EXTERIOR_FOV_K_GAIN=0.5 ; Exterior FOV gain; from 0 to 2, perc.

; And here is an upper bound for resulting coefficient.
EXTERIOR_FOV_K_MAX=4 ; Exterior FOV limit; from 2 to 6, perc.

BIASES=0.02, 0.1, 0.8, 4 ;; hidden

[SMOOTH_CASCADES]
; Smooth transition between shadow cascades
ENABLED=1 ; Active; 1 or 0; new
OVERHANG_MULT=0.9 ; Overhang multiplier (increase to make transition sharper increasing effective shadow resolution); from 0.5 to 1, perc.

[NO_CAR_SHADOWS_IN_THIRD_CASCADE]
; Disable car shadows in third cascade
INTERIOR_VIEW=1 ; For interior view; 1 or 0
EXTERIOR_VIEW=0 ; For exterior view; 1 or 0

[CUSTOM_SHADOW_MATRICES]
; Custom shadow matrices
ENABLED=1 ; Active; 1 or 0
STABILIZED=1 ; Stabilized; 1 or 0; only with ENABLED
ALIGNED=1 ; Aligned vertically; 1 or 0; only with ENABLED
FOURTH_CASCADE=1 ; Fourth cascade for distant shadows (also adds shadows in mirrors and reflections); 1 or 0; only with ENABLED
FOURTH_CASCADE_DISTANCE=1500 ; Fourth cascade distance; from 1000 m to 2000, round to 100

[LAZIER_UPDATE]
; Lazier update (update two out of three shadow maps per frame; helps to improve performance, especially on tracks without good LOD values)
LAZIER_UPDATE_INTERIOR=1 ; Use lazier update for interior; 1 or 0; only with CUSTOM_SHADOW_MATRICES/ENABLED
LAZIER_UPDATE_EXTERIOR=1 ; Use lazier update for exterior; 1 or 0; only with CUSTOM_SHADOW_MATRICES/ENABLED

[WITHOUT_SHADOWS]
; If shadows are disabled or not available
SHADOWED_INTERIOR_MAIN=1 ; Draw interiors fully shadowed (for certain cars only); 1 or 0
SHADOWED_INTERIOR_MIRROR=1 ; Draw interiors in mirrors fully shadowed (for certain cars only); 1 or 0

[DOUBLE_FACE_BIASED]
; hidden
DEPTH_BIAS=0
DEPTH_BIAS_CLAMP=0
SLOPE_SCALED_DEPTH_BIAS=2
