Skip to content

feat(3d-tiles): add renderer-neutral style and feature access - #4021

Merged
ibgreen merged 42 commits into
masterfrom
codex/3d-tiles-style-feature-access
Sep 17, 2026
Merged

ibgreen merged 42 commits into
masterfrom
codex/3d-tiles-style-feature-access

Conversation

@ibgreen

@ibgreen ibgreen commented Sep 16, 2026

Copy link
Copy Markdown
Collaborator

Goals

Advance the R2 styling and feature-access tranche for #1245 with renderer-neutral, typed property inputs while keeping styling evaluation and GPU policy outside loaders.gl.

Changes

  • Add Tile3DStyleInput snapshots with deterministic tileset → group → tile → content → batch-table precedence.
  • Add getTile3DStyleProperty and getTile3DBatchTableProperties helpers; hierarchy-aware batch-table access remains delegated to the existing Cesium-derived implementation.
  • Add getStructuralMetadataProperty as a named-value wrapper over decoded property-table rows, preserving defaults, noData handling, and typed-array values.
  • Preserve raw metadata and feature-ID declarations; no style-language evaluation, type coercion, picking policy, or GPU assumptions are introduced.
  • Add Vitest coverage for metadata precedence, property-source diagnostics, hierarchy-visible batch-table names, invalid feature IDs, and named structural metadata access.
  • Add the styling and feature-access concept guide, cross-links from the 3D Tiles overview/correctness page, compatibility matrix entry, and a What's New bullet.

Scope

This is the loader-side foundation for R2. Full styling expression evaluation, feature picking/coloring policy, and GPU upload remain renderer-owned and are intentionally deferred to follow-up work.

Related: #1245

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 16, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-16T22:09:09.817956Z 77579f7 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 77579f74e9

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread modules/3d-tiles/src/lib/metadata/style-input.ts Outdated
Comment thread modules/3d-tiles/src/lib/metadata/style-input.ts Outdated
Comment thread modules/3d-tiles/src/lib/metadata/style-input.ts
Comment thread docs/modules/3d-tiles/README.md Outdated
@ibgreen ibgreen mentioned this pull request Sep 16, 2026
54 tasks

ibgreen commented Sep 16, 2026

Copy link
Copy Markdown
Collaborator Author

Review follow-up pushed: per-content group indices are now retained on Tile3DContent and resolved via metadataContext.groups; batch-table helpers guard known out-of-range IDs; style maps use null prototypes; and all documentation line breaks are real Markdown newlines. Added coverage for group selection and stale feature IDs.

@ibgreen
ibgreen merged commit a7f407f into master Sep 17, 2026
11 checks passed
@ibgreen
ibgreen deleted the codex/3d-tiles-style-feature-access branch September 17, 2026 10:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant