NASA-AMMOS / NASA-AMMOS/3DTilesRendererJS
Tiles Traversal: Validate handling of the "Add" refinement
Open
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 2.5k
- Forks
- 416
- Avg merge
- 17h 52m
- Merged PRs (30d)
- 37
Description
Related to #669
- The recursivelyMarkUsed and recursivelyLoadNextRenderableTiles function both don't account for "ADD" refinement when determining whether to continue traversal whereas both functions are designed to support loading all "REPLACE" siblings. It's likely a rare case that a REPLACE tile has empty children and then an "ADD" child, though.
The "markVisibleTiles" (see here, here) function assumes that the "ADD" refinement qualifier refers to the current tile rather than the behavior for the childrenThe current behavior is correct per https://github.com/CesiumGS/3d-tiles/issues/416#issuecomment-664353678.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in src/base/traverseFunctions.js with recursivelyMarkUsed and recursivelyLoadNextRenderableTiles, then read related issue #669 and the linked 3D Tiles discussion. Compare their traversal decisions when REPLACE siblings include an ADD-refined child; done means ADD refinement is handled correctly while preserving the documented markVisibleTiles behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- computer-graphics
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100