Skip to content

Dynamic polygon and polyline rendering #548

Description

@keiya01

Premise

We are working on optimizing resource layers that render GIS data.
GeoJSON, in particular, is one of the pain points. Because GeoJSON can contain either large extent geometry or a huge number of features, the rendering pipeline need to be complex if we want to optimize it for both cases.

The most difficult parts are batching geometry and draping on the terrain.
Batching geometry bundles all features into one mesh, but the shader logic becomes complex, and it makes difficult to edit the geometry.
For draping, we use the shadow volume based method, but it causes some errors when we uses this method with the batching.

To avoid such complexity and maximize performance, we will handle these case as follows.

  • Resource layers: Specialized layers for visualizing GIS data, with no dynamic editing support.
  • Mesh: Simple and easy to edit.

Implementation policy

TODO

Note: These new meshes are rendered along the ellipsoidal surface. They support draping on the terrain too.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions