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

The Master Plan #1

Open
matteblair opened this issue Mar 21, 2017 · 2 comments
Open

The Master Plan #1

matteblair opened this issue Mar 21, 2017 · 2 comments

Comments

@matteblair
Copy link
Member

Part 0: Data types and utilities

  • LngLat
  • MercatorMeters
  • TileAddress
  • TileData
  • Coordinate transforms

Part 1: Data sources

  • Asynchronous file/http requests
  • Vector tile format parser(s)

Part 2: Vector data mesh generation

  • Polygon tesselation
  • Polygon extrusion
  • Polyline tesselation
  • Point quads

Part 3: Feature filtering

  • Feature property matching
  • Filter composition
  • Script filters

Part 4: Automatic tile coverage

  • Fixed coverage based on input bounds
  • Streaming coverage following a moving viewport

Part 5: Terrain data mesh generation

  • Elevation grid mesh with normal maps
  • Extruded polygon offsets by elevation grid
  • Polygon and polyline subdivision by elevation grid

Future Parts:

  • Custom location providers
  • Geocoding queries
  • Reverse geocoding queries
  • Routing queries
  • ???
@tallytalwar
Copy link
Member

tallytalwar commented Mar 21, 2017

This looks like a solid plan and flow of work. Following are few ideas, opinions and maybe future work, I can think of right now, we can add to the list:

  • Generic projection: Again could be part of the future (probably more useful in game design scenarios). We never added more map projection support in ES though.
  • More on tile coverage: Borrowing proxy tiles and overzoomed tiles concept from tangram
  • places APIs?
  • isochrones support? (again maybe for future)

@matteblair
Copy link
Member Author

Yeah, thinking about projection options is a good idea. In particular I'd like to think about a non-projection, where map features are drawn on a globe in their true 3D positions.

Some things I forgot on the list:

  • Developer workflows: This is less of a coding task and more of a thought process for determining how to make it easy for game devs to use the output of our code (e.g. exporting models to an editable format)
  • Deployment: We'll need to think about whether this belongs in the Unity Asset store and how we would get it there.
  • Dot Net Core: Throughout development we should make a conscious effort to keep Unity-specific code as contained as possible, in order to enable later deployment to other Dot Net platforms.

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

No branches or pull requests

2 participants