Skip to content

Conversation

jjhembd
Copy link
Contributor

@jjhembd jjhembd commented Oct 9, 2025

Description

TODO

See restrictions on the structure of 3D Tiles data to be used as terrain: #12296 (comment)

Issue number and link

Resolves #12296

Testing plan

TODO before moving this out of "Draft":

  • Update Sandcastles to new gallery format
  • Open separate PR for doc fixes, Check calls: EllipsoidalOccluder, GoogleEarthEnterpriseTerrainData, TerrainEncoding (separate from other changes in file), binarySearch, mergeSort, QuantizedMeshTerrainDataSpec. Beware incorrect capitalizations like {Object}, {Number[]}! See Clean up docs and type checks for terrain providers #12969
  • Verify changes to ResourceCache. The new getEmbeddedBufferLoader -> addBufferLoader sequence involves additional URI parsing, which has performance implications.
  • Understand changes to signature in TerrainEncoding

Author checklist

  • I have submitted a Contributor License Agreement
  • I have added my name to CONTRIBUTORS.md
  • I have updated CHANGES.md with a short summary of my change
  • I have added or updated unit tests to ensure consistent code coverage
  • I have updated the inline documentation, and included code examples where relevant
  • I have performed a self-review of my code

Copy link

github-actions bot commented Oct 9, 2025

Thank you for the pull request, @jjhembd!

✅ We can confirm we have a CLA on file for you.

@jjhembd jjhembd changed the base branch from main to terrain-docs October 10, 2025 22:05
@jjhembd jjhembd changed the base branch from terrain-docs to main October 10, 2025 22:31
@jjhembd jjhembd changed the base branch from main to terrain-docs October 10, 2025 22:32
Base automatically changed from terrain-docs to main October 16, 2025 21:14
});

if (!defined(bufferLoader)) {
bufferLoader = resourceCache.addBufferLoader({
Copy link
Contributor Author

@jjhembd jjhembd Oct 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Both resourceCache.getEmbeddedBufferLoader and .addBufferLoader call ResourceCacheKey.getEmbeddedBufferCacheKey, which involves expensive URI parsing. For other 3D Tilesets, we have previously found that URI parsing can be a bottleneck.

We may want to consider reverting to the old getEmbeddedBufferLoader syntax, which re-used the key.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bring Cesium3DTilesTerrainProvider into main

4 participants