CesiumGS / CesiumGS/cesium

Shadow aliasing in Chrome

Open
#4,560 2 comments 0 reactions 0 assignees View on GitHub
category - graphics type - bug
Dominant language
JavaScript
Stars
15.7k
Forks
3.9k
Avg merge
4d 6h
Merged PRs (30d)
34

Description

The polygon offset setting for `ShadowMap` has very little effect in Chrome. As a fallback, the shadow cast shader pushes depth values linearly with camera distance, which is prone to light leaking.

I first noticed this with the transition from Chrome 49 to Chrome 50. Polygon offset works fine when ANGLE is disabled.

More details here: https://groups.google.com/forum/#!topic/webgl-dev-list/E1dAG65QBhg

Contributor guide

Open the contributing guide

Research direction

Start with the ShadowMap polygon-offset behavior and the shadow cast shader, then reproduce the difference between Chrome 49 and Chrome 50 with ANGLE enabled and disabled. Read the linked WebGL discussion for context. Done means polygon offset has a meaningful effect in Chrome without relying on the camera-distance fallback that can cause light leaking.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
computer-graphics
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.