Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Filtering resources using 3D Tiles Next #9553

Open
ptrgags opened this issue May 20, 2021 · 0 comments
Open

Filtering resources using 3D Tiles Next #9553

ptrgags opened this issue May 20, 2021 · 0 comments

Comments

@ptrgags
Copy link
Contributor

ptrgags commented May 20, 2021

One benefit that 3D Tiles Next brings is richer metadata that could potentially be used to filter out unneeded resources. However, we'd need to plan the API for this.

Some examples:

  • When using implicit tiling, tile metadata is not always needed. It would be nice to filter by semantic, class or property name. Or perhaps allow disabling tile metadata altogether
  • With multiple contents + group metadata, contents could be assigned into different groups (e.g. a terrain group and a buildings group). Then it would be helpful to filter this by group. E.g. "load only the terrain")

For implicit tiling at least, the implementation should be straightforward, the markActiveBufferViews() function in ImplicitSubtree can be modified to filter the list of buffer views. This can be used to avoid requesting unnecessary buffers.

Caveats:

  • The usefulness of filtering depends on how the data is stored. If the metadata and other data (implicit tile availability, or glTF data in the case of EXT_feature_metadata) is all stored in a single binary file, there's no way to avoid downloading the whole file. Filtering would be more helpful if the optional data is stored in an external buffer.
  • If we want to filter a partial buffer (e.g. to exclude some bufferViews), some of the data would have to be copied elsewhere in memory before freeing the underlying buffer.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant