Johannes Hofmann
333593ca95
Rename ViewMode -> Projection
ViewMode::Flat -> Projection::Mercator
ViewMode::Globe -> Projection::Orthografic
преди 7 години
Johannes Hofmann
c8f358ebc6
Spherical tile visibility, part II
Still not solved. Tried to approach by calculating properties of
elliptical arcs, but there are so many edge cases...
преди 7 години
Johannes Hofmann
696d382fc8
Add globe view mode, partially solve tile visibility
* Toggle between ViewMode::Flat and ViewMode::Globe with Ctrl+G
* Approach tile visibility problem at the sphere
преди 7 години
Johannes Hofmann
d7a9681521
Render the map as a sphere
A work in progress...
преди 7 години
Johannes Hofmann
bfa801d2e3
Add option to store and restore last session
преди 7 години
Johannes Hofmann
13d366fc1d
Extract code into tile_layer module
преди 7 години
Johannes Hofmann
5f47684dc4
Extract code into marker_layer module
преди 7 години
Johannes Hofmann
2f5db2e7ad
Fix marker visibility calculation
преди 7 години
Johannes Hofmann
c430500e69
Support drawing markers
преди 7 години
Johannes Hofmann
5891c0de46
Cache enabled vertex attributes, store params
* Cache the enabled vertex attributes in `Context`
* The vertex attribute parameters (offset, stride, ...) are not cached,
yet
* Store parameters as `VertexAttribParams` in `Program`
преди 7 години
Johannes Hofmann
c7f1518897
Cache active texture unit, assign unit to texture
Each Texture is bound to a unique texture unit (glBindTexture is called
only once). Context keeps track of the current active texture unit and
reduces the number of glActiveTexture calls to a minimum.
преди 7 години
Johannes Hofmann
38d1cf35e5
Restructure OpenGL context sharing
Program, Buffer, Texture... structs no longer store a reference to a
Context. Now it has to be passed explicitly to all methods that mutate
the OpenGL state. This enables caching the state and removing redundant
calls to gl* functions.
преди 7 години
Johannes Hofmann
19e28a35d8
Don't call glClear when map fills the whole screen
преди 7 години
Johannes Hofmann
abb562f412
map_view_gl: Specify min and max zoom level
преди 7 години
Johannes Hofmann
fcbad65155
Fix clippy warnings
преди 7 години
Johannes Hofmann
e4e11e76cd
Move glClear call out of the critical path
преди 7 години
Johannes Hofmann
980ce573f1
Document map_view.rs
преди 7 години
Johannes Hofmann
098ebc582a
Include resources with include_bytes! macro
преди 7 години
Johannes Hofmann
a7db860456
Improve error handling with OpenGL functions
преди 7 години
Johannes Hofmann
5d67d3bef5
Add --sync option
преди 7 години
Johannes Hofmann
86d28b14fa
Ensure that the initial atlas size is <= MAX_TEXTURE_SIZE
преди 8 години
Johannes Hofmann
7a1d847cf4
Fix some clippy warnings, update dependencies
преди 8 години
Johannes Hofmann
24ef61939c
Increase tile atlas size when needed
преди 8 години
Johannes Hofmann
1abbe6393d
Rename tile_cache_gl -> tile_atlas
преди 8 години
Johannes Hofmann
489df246d4
Draw in multiple steps when texture atlas is too small
преди 8 години
Johannes Hofmann
a91637ade6
Rename render_zoom_level -> tile_zoom
преди 8 години
Johannes Hofmann
b7988fd29f
Allow changing render zoom level
преди 8 години
Johannes Hofmann
00b904a720
Add option for offline usage
преди 8 години
Johannes Hofmann
2b1fb5a60c
map_view: Rename zoom_level -> render_zoom_level
преди 8 години
Johannes Hofmann
e735fafcda
Add step_zoom method
преди 8 години
Johannes Hofmann
78d7b41aee
Remove some println calls
преди 8 години
Johannes Hofmann
295760f5c6
Generate no_tile.png
преди 8 години
Johannes Hofmann
e3607d7c78
Prioritize tile loading based on current view
преди 8 години
Johannes Hofmann
350e8db588
Add ability to switch tile source during execution
преди 8 години
Johannes Hofmann
16ffdb5baa
Initial commit :>
Started 2015
преди 8 години