CesiumGS / CesiumGS/cesium-native
Tile culling logic is not optimal
- Dominant language
- C++
- Stars
- 623
- Forks
- 277
- PR merge metrics
- No merged PRs in 30d
Description
I noticed while working on #981 that our tile culling logic isn't as good as it can be.
In order for a tile to be visible, it must pass both the frustum test and the fog test. However, nothing requires that it pass both tests _in the same view_. So if a scene has two cameras, and in one a given tile is very far away, so it should be fog culled, and in the other the tile is nearby but behind the camera so it should be frustum culled, then this tile will be considered visible, when really it's not.
Contributor guide
Research direction
Start by locating the tile culling logic described in the issue and review the context from #981. Reproduce the two-camera case where frustum and fog tests disagree, then verify that visibility is evaluated consistently for each view. Done means the tile is culled when no single view passes both tests, with coverage for this scenario.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- computer-graphics
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100