plotly.js icon indicating copy to clipboard operation
plotly.js copied to clipboard

Improve stackgl rendering pipeline for transparent traces

Open archmoj opened this issue 5 years ago • 9 comments
trafficstars

Thanks to fixes made in #4566 and #4480, this PR could fix #3243 as well as #1267.

@alexcjohnson Commit https://github.com/plotly/plotly.js/commit/27ba6c1704dbf6fe51016b7a3db3607ce9d678d4 added various failing tests. Commit https://github.com/plotly/plotly.js/commit/efa3cb787da4ed0ca811b5bcdfe63a8dbe1dd1b8 old work done in gl-plot3d rebased and and applied to update the baselines.

archmoj avatar Mar 15 '20 18:03 archmoj

Applied #4725 to update conflicting baseline with extremes opacityscale in https://github.com/plotly/plotly.js/pull/4643/commits/3373d8ce1ceee8dc350f1b13a95ee3cbfa74439d.

archmoj avatar Apr 06 '20 18:04 archmoj

Stumbled upon some nice work that our old colleague Ricky published recently in this area: https://observablehq.com/@rreusser/faking-transparency-for-3d-surfaces

jackparmer avatar Jun 19 '20 17:06 jackparmer

ooh Ricky's demo has some nice features for single-surface presentation - I really like his "cartoon edges" and an option to let the wireframe show through an otherwise opaque surface could be cool. But I don't think this helps us with multiple traces - or a single trace that makes multiple surfaces.

I like the dual depth peeling demo he pointed out - not sure quite what's going on there but it looks promising.

alexcjohnson avatar Jun 19 '20 19:06 alexcjohnson

This issue has been tagged with NEEDS SPON$OR

A community PR for this feature would certainly be welcome, but our experience is deeper features like this are difficult to complete without the Plotly maintainers leading the effort.

Sponsorship range: $15k-$20k

What Sponsorship includes:

  • Completion of this feature to the Sponsor's satisfaction, in a manner coherent with the rest of the Plotly.js library and API
  • Tests for this feature
  • Long-term support (continued support of this feature in the latest version of Plotly.js)
  • Documentation at plotly.com/javascript
  • Possibility of integrating this feature with Plotly Graphing Libraries (Python, R, F#, Julia, MATLAB, etc)
  • Possibility of integrating this feature with Dash
  • Feature announcement on community.plotly.com with shout out to Sponsor (or can remain anonymous)
  • Gratification of advancing the world's most downloaded, interactive scientific graphing libraries (>50M downloads across supported languages)

Please include the link to this issue when contacting us to discuss.

jackparmer avatar Sep 10 '20 19:09 jackparmer

Hi @jackparmer & @archmoj, I'm trying to understand the content of this PR and will be grateful for your help in clarifying what's happening in this PR. It looks like the changes in the PR update or add unit test outputs, but the PR does not include any code to generate those plots, is that right? How were these updated unit test outputs generated if there is no code to generate them?

stevendbrown avatar Aug 04 '21 00:08 stevendbrown

Hi @jackparmer & @archmoj, I'm trying to understand the content of this PR and will be grateful for your help in clarifying what's happening in this PR. It looks like the changes in the PR update or add unit test outputs, but the PR does not include any code to generate those plots, is that right? How were these updated unit test outputs generated if there is no code to generate them?

The proposed changes were in gl-plot3d module. https://github.com/gl-vis/gl-plot3d/compare/gl3d-blend-rebase

archmoj avatar Aug 04 '21 01:08 archmoj

Hi, what would be needed to push this over the finish line? My usecase would benefit greatly from correct transparency rendering, so I'd be very happy if this could be fixed. I'm willing to contribute the changes needed myself if there's anything blocking this.

elaude avatar May 10 '24 12:05 elaude

Hi, what would be needed to push this over the finish line? My usecase would benefit greatly from correct transparency rendering, so I'd be very happy if this could be fixed. I'm willing to contribute the changes needed myself if there's anything blocking this.

@Coding-with-Adam Let's keep track of this for our discussion. Thanks!

archmoj avatar May 10 '24 14:05 archmoj

Hi, what would be needed to push this over the finish line? My usecase would benefit greatly from correct transparency rendering, so I'd be very happy if this could be fixed. I'm willing to contribute the changes needed myself if there's anything blocking this.

As discussed with @gvwilson I'll try to give this another push (after resolving the merge conflicts) and possibly expose this option via a new attribute.

archmoj avatar May 16 '24 15:05 archmoj