Commit Graph

108 Commits

Author SHA1 Message Date
Konstantin Käfer
0bfd7b0f43 Calculate clip IDs with a huffman prefix tree
This changes the clip IDs from sequential to a huffman prefix tree, meaning that
parent tiles share the same prefix with child tiles (but are shorter). This allows
us to use the same checkerboard pattern to draw all tiles.

TODO:
- make sure we're not overflowing the 8 bit limit of the stencil buffer
- draw all checkerboard fields at the same time, with one draw call
- fix raster drawing (fading, clipping)

refs #132
2014-05-09 18:10:28 +02:00
Konstantin Käfer
6574f0d188 add setAngle() call with duration 2014-05-02 10:28:47 +02:00
Justin R. Miller
e56a8113e7 fix animation duration casting errors 2014-05-01 12:20:39 -07:00
Konstantin Käfer
449f403e87 rename animation => transition 2014-04-30 14:46:28 +02:00
Konstantin Käfer
4afe20776d move animation time api to use nanoseconds 2014-04-30 14:20:15 +02:00
Konstantin Käfer
9bbdba9eab remove concept of settings object from library 2014-04-30 13:47:03 +02:00
Konstantin Käfer
e95ece8333 fix sprite rendering 2014-04-30 13:05:04 +02:00
Konstantin Käfer
f683cbf02a hide atomic flags as implementation detail 2014-04-30 12:29:50 +02:00
Konstantin Käfer
fcfd506a3c fix rendering + build 2014-04-30 12:09:38 +02:00
Konstantin Käfer
1216a061d3 move to libuv for the rendering loop 2014-04-30 12:01:26 +02:00
Konstantin Käfer
3e92f36afc fix headless test case 2014-04-25 16:12:03 +02:00
Konstantin Käfer
666f593803 use an event loop per map that is not the render thread 2014-04-25 14:26:59 +02:00
Konstantin Käfer
b119aa92d8 remove Settings object from Painter 2014-04-16 16:45:09 -04:00
Konstantin Käfer
797f590cfb cleanup + unused arguments 2014-04-16 10:55:06 -04:00
Konstantin Käfer
74cb7edb5b remove more unused variables 2014-04-16 10:47:09 -04:00
Konstantin Käfer
1b922e3a34 remove start_x/y variables, they're unused 2014-04-16 10:46:52 -04:00
Konstantin Käfer
05f8039981 Merge branch 'master' of github.com:mapbox/llmr-native 2014-04-15 18:47:59 -04:00
Konstantin Käfer
b414cbea44 automatically derive fb dimensions 2014-04-15 18:45:15 -04:00
Konstantin Käfer
0367dbe8c7 use unique_ptrs and fix compile on mapnik 2014-04-15 12:24:15 -07:00
Konstantin Käfer
78c10c0701 Merge remote-tracking branch 'remotes/origin/pr/127'
Conflicts:
	include/llmr/map/map.hpp
	src/map/map.cpp
	src/platform/platform.cpp
2014-04-15 12:46:19 -04:00
Konstantin Käfer
e9db888491 cascade stylesheet on every update, including animations
previously, animations didn't trigger a style cascade, leading to overly thick lines

fixes #81
2014-04-15 11:40:52 -04:00
Konstantin Käfer
9bb88711b8 always start animations with a common start time
fixes #134
2014-04-14 19:30:09 -04:00
Konstantin Käfer
f18aa61e33 derive from GLKViewController
this handles resizing the view/framebuffer much better

fixes #130, #131, #133, #118
2014-04-14 18:50:17 -04:00
Konstantin Käfer
06bcab9560 correctly update the map dimensions on rotate
refs #37
2014-04-10 14:07:36 -04:00
Konstantin Käfer
eb499e77c1 fix linejoin drawing on retina 2014-04-10 11:49:43 -04:00
Justin R. Miller
228ce33278 cleanup APIs a bit 2014-04-09 11:59:27 -07:00
Justin R. Miller
482ac31fde re-enable raster mode toggling 2014-04-04 15:22:47 -07:00
Justin R. Miller
1215f6f1fe refs #101: data sources with styling
* add second, satellite class to stylesheet
 * get rid of tile clipping masks for now
 * flesh out raster styling properties
2014-04-04 13:24:11 -07:00
Justin R. Miller
f8e771b79e move to satellite raster 2014-04-02 15:12:52 -07:00
Justin R. Miller
d2491939e9 move to naming like on web 2014-04-02 15:12:42 -07:00
Justin R. Miller
00e910c147 bring back toggleRaster() by way of layer enable toggling 2014-04-02 15:01:05 -07:00
Justin R. Miller
f60a46229d refs #101: first cut of basic hacky data sources 2014-04-02 11:07:22 -07:00
Konstantin Käfer
afe27ed74c only animate when we need to fade the text 2014-03-24 18:00:03 +01:00
Konstantin Käfer
5c613b5455 normalizedZoom() == zoom level of the visual appearance 2014-03-24 14:44:44 +01:00
Konstantin Käfer
ea6b24d02d add text rendering code 2014-03-21 17:36:29 +01:00
Konstantin Käfer
3413ee536d Merge branch 'master' into sdf
Conflicts:
	include/llmr/map/tile_data.hpp
	include/llmr/shader/shaders.hpp
	src/map/map.cpp
	src/map/tile_data.cpp
	src/platform/platform.cpp
	src/shader/shaders.cpp
2014-03-21 13:36:32 +01:00
Justin R. Miller
00a3245ce8 fixes #70: raster tile rendering as toggleable mode from vector 2014-03-18 16:57:17 -07:00
Konstantin Käfer
3c5bac0f6b add debug window showing the glyph atlas 2014-03-14 12:43:42 +01:00
Konstantin Käfer
be44b6b31f add glyph atlas to map 2014-03-14 11:36:10 +01:00
Konstantin Käfer
86e6e6bed8 use a custom struct for Tile IDs 2014-03-12 16:42:37 +01:00
Konstantin Käfer
91d42911fb parse the json stylesheet 2014-03-12 11:23:01 +01:00
Konstantin Käfer
f04f42df8f load new tile if it's marked as obsolete 2014-03-11 12:18:47 +01:00
Konstantin Käfer
420cb58a5d fix pedantic warnings 2014-03-11 12:10:07 +01:00
Konstantin Käfer
69a5c0e15f better support for gles2 2014-03-05 16:58:46 +01:00
Konstantin Käfer
1fbaa95b02 fix tile loading 2014-03-05 16:40:07 +01:00
Konstantin Käfer
a3a1b812c8 don't pass around pointers if all we need is the state 2014-03-05 09:56:36 +01:00
Konstantin Käfer
027c6f33b3 implement tile wrapping
fixes #14
2014-03-05 09:40:32 +01:00
Konstantin Käfer
b0ddabd6ac rename Tile to TileData 2014-03-04 17:53:16 +01:00
Konstantin Käfer
ba5070bf52 Port scanline algorithm from _getCoveringTiles()
fixes #22
2014-03-04 14:50:17 +01:00
Konstantin Käfer
0a6dbc8064 Merge branch 'nostencil'
Conflicts:
	macosx/main.mm
	src/map/map.cpp
2014-03-03 16:02:13 +01:00