-
Notifications
You must be signed in to change notification settings - Fork 388
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
C++ as_components style & splatting (#3258)
### What * Part of: #2919 * Fixes #3256 * just like in Rust it's actually `as_component_lists`, we return a vector of type erased component arrays that know how to serialize themselves, dubbed `AnonymousComponentList` for now. * I'm not happy with naming and internals of `AnonymousComponentList`. This smells very much like we should have actual inheritance somewhere, but it's a bit tricky since we want to extract pointer out of arbitrary list types, giving rise to the type aware `ComponentList`. Overall the approach here tries to mimic Rust but ultimately misses the target, since, well this is not Rust. To be revisited, maybe it is just a naming issue! * Fixes #3255 * indicators are regular components now, their handling in `as_component_lists` is very slightly dubious since they're not backed by data but ofc indicator components don't have any data to begin with 🤷 * Fixes #3040 * First step towards #3050 Trigger of this PR was the inability to deal with mono components like `DrawOrder` -> need splatting -> don't want to implement splatting separately for components & archetype -> implement as_components-style Quick throw-away test for splatting radius on the random point demo: <img width="943" alt="image" src="https://github.com/rerun-io/rerun/assets/1220815/d256b281-34c7-4d6c-a143-b4d604a13b75"> ### Checklist * [x] I have read and agree to [Contributor Guide](https://github.com/rerun-io/rerun/blob/main/CONTRIBUTING.md) and the [Code of Conduct](https://github.com/rerun-io/rerun/blob/main/CODE_OF_CONDUCT.md) * [x] I've included a screenshot or gif (if applicable) * [x] I have tested [demo.rerun.io](https://demo.rerun.io/pr/3258) (if applicable) - [PR Build Summary](https://build.rerun.io/pr/3258) - [Docs preview](https://rerun.io/preview/f732aad18515476d81d57b89108e08f787729ae6/docs) <!--DOCS-PREVIEW--> - [Examples preview](https://rerun.io/preview/f732aad18515476d81d57b89108e08f787729ae6/examples) <!--EXAMPLES-PREVIEW--> - [Recent benchmark results](https://ref.rerun.io/dev/bench/) - [Wasm size tracking](https://ref.rerun.io/dev/sizes/)
- Loading branch information
Showing
114 changed files
with
901 additions
and
1,426 deletions.
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Oops, something went wrong.