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

Custom layer immediate and draped rendering on globe and terrain #12182

Merged
merged 25 commits into from
Jan 24, 2023

Commits on Jan 24, 2023

  1. WIP: Custom layer draping support

    CustomStyleLayer API extended to support draping with new methods:
    
    export type CustomLayerInterface = {
    ...
        // misusing MercatorCoordiate's xyz for tile id (x, y, z) where wrap is baked into x.
        renderToTile: ?(gl: WebGLRenderingContext, tileId: MercatorCoordinate) => void,
    
        // return true only for frame when content has changed - otherwise, all the terrain
        // render cache would be invalidated and redrawn causing huge drop in performance.
        shouldRerenderTiles: ?() => boolean,
    }
    
    Using WebGL Wind demo code, for simplicity of use, instead of adding submodule, copied dist code. Full code is available at https://github.com/mapbox/webgl-wind/tree/astojilj-draping-support
    astojilj authored and akoylasar committed Jan 24, 2023
    Configuration menu
    Copy the full SHA
    8b9071f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9f06ee7 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8a604c2 View commit details
    Browse the repository at this point in the history
  4. use sphere model

    akoylasar committed Jan 24, 2023
    Configuration menu
    Copy the full SHA
    c2ed1b6 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    1c2368a View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    bb9cbe0 View commit details
    Browse the repository at this point in the history
  7. satellite vis

    akoylasar committed Jan 24, 2023
    Configuration menu
    Copy the full SHA
    17bba08 View commit details
    Browse the repository at this point in the history
  8. satellite vis complete

    akoylasar committed Jan 24, 2023
    Configuration menu
    Copy the full SHA
    bef8bc2 View commit details
    Browse the repository at this point in the history
  9. clean up

    akoylasar committed Jan 24, 2023
    Configuration menu
    Copy the full SHA
    bda3020 View commit details
    Browse the repository at this point in the history
  10. continued clean up

    akoylasar committed Jan 24, 2023
    Configuration menu
    Copy the full SHA
    d523d98 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    4833451 View commit details
    Browse the repository at this point in the history
  12. formatgs

    akoylasar committed Jan 24, 2023
    Configuration menu
    Copy the full SHA
    589b19d View commit details
    Browse the repository at this point in the history
  13. rm threejs

    akoylasar committed Jan 24, 2023
    Configuration menu
    Copy the full SHA
    65ace46 View commit details
    Browse the repository at this point in the history
  14. rm unused funcs

    akoylasar committed Jan 24, 2023
    Configuration menu
    Copy the full SHA
    cec55a8 View commit details
    Browse the repository at this point in the history
  15. minor

    akoylasar committed Jan 24, 2023
    Configuration menu
    Copy the full SHA
    fd26f28 View commit details
    Browse the repository at this point in the history
  16. render test for draping

    akoylasar committed Jan 24, 2023
    Configuration menu
    Copy the full SHA
    c490786 View commit details
    Browse the repository at this point in the history
  17. render test updated

    akoylasar committed Jan 24, 2023
    Configuration menu
    Copy the full SHA
    a17bc70 View commit details
    Browse the repository at this point in the history
  18. minor update to render test

    akoylasar committed Jan 24, 2023
    Configuration menu
    Copy the full SHA
    32af347 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    70a557d View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    1e00366 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    dbf9173 View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    835ea69 View commit details
    Browse the repository at this point in the history
  23. Pass projection and resolve mercatorMatrix during transition

    In globe projection, mercator matrix z scale was incorrect, disabling possibility for transition. Transform.mercatorMatrix changed in order to produce the expected mercator matrix, even in globe (zoom 5->6) transition, and then the same compensated in globe to mercator matrix.
    
    updated satellites_custom_layer.js to show transition and satellites in mercator projection.
    astojilj authored and akoylasar committed Jan 24, 2023
    Configuration menu
    Copy the full SHA
    edce689 View commit details
    Browse the repository at this point in the history
  24. Lint and Flow fixes

    astojilj authored and akoylasar committed Jan 24, 2023
    Configuration menu
    Copy the full SHA
    ff45cae View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    0979259 View commit details
    Browse the repository at this point in the history