Skip to content

FIx shadow banding on cockpits#7495

Merged
BMagnu merged 1 commit into
scp-fs2open:masterfrom
BMagnu:smooth_z_compressed_shadows
Jun 3, 2026
Merged

FIx shadow banding on cockpits#7495
BMagnu merged 1 commit into
scp-fs2open:masterfrom
BMagnu:smooth_z_compressed_shadows

Conversation

@BMagnu

@BMagnu BMagnu commented Jun 3, 2026

Copy link
Copy Markdown
Member

Followup to #7245.
Turns out "but no cockpit actually needs micrometer or even nanometer precision" was an incorrect assumption, as this level of precision is needed to avoid shadow banding at very shallow light angles.

Fortunately, this is a very easy fix.
We just switch to linear handling in the closest accuracy band (thanks to Wookiee for the idea and find).
This will reduce the accuracy at 10m compared to Z-compressed, but not below what the accuracy was before Z-compression was introduced.
This will also not increase the accuracy of very close geometry to / beyond of what it was originally, but it will increase it beyond what it was with Z-compression.
In effect, this will just reshuffle some 10m accuracy to the sub-meter range in a linear fashion instead of in an equidistant fashion. This should remove any shadow banding in the cockpit range, while not reducing visual fidelity beyond what it was before Z-compression.

Any other parts of Z-compression, like long-distance view support or increased accuracy in the main battle lighting resolution are untouched and continue to work.

@BMagnu BMagnu added this to the Release 26.0 milestone Jun 3, 2026
@BMagnu BMagnu added fix A fix for bugs, not-a-bugs, and/or regressions. graphics A feature or issue related to graphics (2d and 3d) labels Jun 3, 2026
@BMagnu BMagnu merged commit 4246b76 into scp-fs2open:master Jun 3, 2026
20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

fix A fix for bugs, not-a-bugs, and/or regressions. graphics A feature or issue related to graphics (2d and 3d)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants