Files
benilla-octo/crates
pkuzicandClaude Opus 4.8 68f8e31c48 MONKEY: shadow render-distance slider (shadowDistance)
Make the 80 yd realtime-shadow range a runtime slider (Options -> Graphics ->
Shadow Distance, 40-200 yd, default 80). Confirmed in-game.

- shadowDistance cvar -> VideoConfig.shadow_distance, clamped to
  shadow_core::SHADOW_DISTANCE_RANGE. VideoConfig drops Eq (f32 field).
- shadow_core reads it: the cascade maximum_distance + the caster-collection
  reaches. The CascadeShadowConfig is re-fit only when the slider changes (not
  per frame, which would defeat the texel snap and crawl every edge).
- Bridged to a benilla-world ShadowDistance resource; global_light packs it into
  the free row-19 light lane so the receiver EDGE FADE fades at the cascade's
  actual max distance, whatever the slider is set to (terrain _wmo_fog[1].z /
  model wmo_fog_params.z). The fixed SHADOW_RANGE consts are gone.
- Options: a deferred slider row (commits on Apply so a drag doesn't re-fit the
  cascade + recollect casters every tick).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-09-05 17:13:49 +01:00
..