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

[WIP] Performance improvements #93

Open
wants to merge 18 commits into
base: gh-pages
Choose a base branch
from
Open

[WIP] Performance improvements #93

wants to merge 18 commits into from

Conversation

nvkelso
Copy link
Member

@nvkelso nvkelso commented Feb 27, 2019

  • Set offset to array
  • Always use same units in an array (like in offset)
  • Add sizes on textures to for Tangram ES
  • Simplify shield handling
  • move JS functions to last filter eval
  • Generally simplify layer filter setup
  • Trust the server more for things like water areas
  • Cleanup water waves shader (assigned to @tallytalwar)
  • Cleanup other shader changes, including dots, etc (assigned to @tallytalwar)
  • Other shader cleanups
  • Better language filtering for country, region labnels
  • Hillshade shader changes (not clear if necessary) - (@tallytalwar: no grave perf issues here)
  • Dashes as style versus draw params for ferry, rail, steps (for Tangram ES) - (assigned to @tallytalwar, to make it work for ES) (f4192ac, 08aea82)
  • lossless compress all textures (ef02ef3)
  • Upgrade to Tangram JS v0.18
  • Eye ball visual regressions

@nvkelso
Copy link
Member Author

nvkelso commented Feb 27, 2019

@tallytalwar Can you take a look at the shader errors here, please? Looks like it fails completely in Tangram JS v0.18 while partially fails in v0.16, from waves shader. There's also another one related to a shader color.

Tangram v0.16.1 [error]: Style: error compiling program for style 'dots-rev' (program key 'program') 
Tangram v0.16.1 [error]: Style: error compiling program for style 'dots-rev-grid' (program key 'program') 
Tangram v0.16.1 [error]: Style: error compiling program for style 'horizontal-bars' (program key 'program') 
Tangram v0.16.1 [error]: Style: error compiling program for style 'waves' (program key 'program') 

@nvkelso nvkelso marked this pull request as ready for review February 27, 2019 23:04
@nvkelso nvkelso changed the title Performance improvements [WIP] Performance improvements Feb 27, 2019
@tallytalwar
Copy link
Member

@nvkelso Sure, assigned myself to a few things in the description above.

@tallytalwar
Copy link
Member

screen shot 2019-02-15 at 3 13 05 pm

Savings from lossless compressions.

nvkelso and others added 6 commits February 28, 2019 12:04
- ES does not support dash draw rules, until then use special dash
styles for dash drawings
- To be uncommented when ES implements dash draw rules
- building-grid
- dots
- horizontal-bar
- dots-rev was using old define instead of new uniform in color block
- horizontal-bars-rev was using incorrect assignment for uniform value
@tallytalwar
Copy link
Member

@nvkelso over to you now.

@nvkelso
Copy link
Member Author

nvkelso commented Mar 7, 2019

For the waves shader, I like how the position is constant now, but can we do something similar to the landuse dots in Bubble Wrap dots – where the waves size is more "constant" looking for the 2 major waves, but the new wave that's introduced grows from a pixel to a full line width wave during the zoom?

=====
=====

to

=====
-----
=====

to

=====
=====
=====

@nvkelso nvkelso self-assigned this Mar 7, 2019
@nvkelso
Copy link
Member Author

nvkelso commented Mar 7, 2019

From @meetar, about the wave pattern:

My 2¢: I'd suggest eventually switching to a texture, and crossfading between zooms, as in the current map. I have an example using Tangram here: http://tangrams.github.io/texture-demos/?url=scenes/texture-tiles.yaml

@tallytalwar
Copy link
Member

Cross fade for texture is good, but I think we can have a pure mathematical implementation for desired wave transitions.

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.

2 participants