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

Binary/DataFrame/Arrow Support RFCs #2761

Draft
wants to merge 4 commits into
base: master
from

Conversation

Projects
None yet
2 participants
@ibgreen
Copy link
Contributor

ibgreen commented Mar 6, 2019

For #2665

Not ready for formal review, sharing to show direction.

Background

  • This is a first outcome of the investigations into improved Binary, Data Frame and Arrow support.

Change List

  • Suite of RFCs indicating possible long term direction.
  • Trying to break into multiple RFCs to ensure they are all easily digestible.

Also started moving the "documentation part" of the partially implemented Binary RFC into docs (which was always the intention) to tame the length of that RFC, and allow the definitions made there to be used as the base for the text in the new micro RFCs

@ibgreen ibgreen requested review from Pessimistress, tsherif and gnavvy Mar 6, 2019

### How to detect chunks?

Check if element of `data` is iterable?

This comment has been minimized.

Copy link
@Pessimistress

Pessimistress Mar 7, 2019

Contributor

How does this work with binary data support (data is also non-iterable)?

```
new CircleLayer({
// inject new attributes

This comment has been minimized.

Copy link
@Pessimistress

Pessimistress Mar 7, 2019

Contributor

Adding top-level, nested object props for customization like this can lead to a lot of issues. For all layer props we support one of the following path to update:

  • update on shallow change - no, we definitely don't want to recompile the shader every frame
  • update trigger - this is not an accessor
  • update on deep change - it can still be expensive

Instead, I would like to roll shader injection into the layer extension proposal (extensions are wrapped in a class).

getPosition: 'return vec3(longitude, latitude, 0.);',
// Supply values to the injected attributes
attributes: {

This comment has been minimized.

Copy link
@Pessimistress

Pessimistress Mar 7, 2019

Contributor

Is it the intention to collect other user-provided attribute buffers (e.g. instancePositions) in this prop as well?


### Transitions

It would seem possible to implement transitions for injected attributes. Perhaps some descriptor metadata is needed so that the user can specify if/how this should be done.

This comment has been minimized.

Copy link
@Pessimistress

Pessimistress Mar 7, 2019

Contributor

The attributes would need to be explicitly declared in the AttributeManager

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.