Commit Graph

63 Commits

Author SHA1 Message Date
Bruno de Oliveira Abinader
df5a395708 [core] Refactor wireframe to match JS overdraw mode 2016-06-20 13:24:20 +03:00
John Firebaugh
a020e535ca [core] Add a few conveniences to Color 2016-06-15 13:22:00 -07:00
Bruno de Oliveira Abinader
fc0f4edef3 [core] Fix sublayer depth when drawing stroke
Port from -js: 002c690712
2016-06-15 18:53:05 +03:00
Bruno de Oliveira Abinader
54e3aa185f [core] Cleaned up Painter::render{Background,Fill} 2016-06-15 18:53:05 +03:00
Bruno de Oliveira Abinader
814e516a4f [core] Separate pattern size from draw-time variables
Part of https://github.com/mapbox/mapbox-gl-shaders/issues/1.
2016-06-15 18:53:05 +03:00
Young Hahn
24b66bc8cd Color class (#5361)
* Color class

* Switch to list initialization
2016-06-15 11:38:22 -04:00
Bruno de Oliveira Abinader
9142c447e8 [tidy] Check llvm-namespace-comment
Ref: http://clang.llvm.org/extra/clang-tidy/checks/llvm-namespace-comment.html
2016-06-13 23:32:05 +03:00
Bruno de Oliveira Abinader
8b28b6ab6b [core] Renamed OutlineShader's color uniform
Part of https://github.com/mapbox/mapbox-gl-shaders/issues/8.
2016-06-07 15:04:02 +03:00
John Firebaugh
c902f9098b [core] Rationalize naming for style-related code 2016-06-02 14:51:39 -07:00
John Firebaugh
a43940afb2 [core] Runtime style layer API 2016-06-02 14:51:39 -07:00
Bruno de Oliveira Abinader
2038a21cb5 [core] s/GLObjectStore/ObjectStore/ 2016-06-01 13:53:39 +03:00
John Firebaugh
c568a8ad77 [core] Port "separate u_opacity from u_color"
0d34125196
1f5afa7db0
2016-05-25 21:37:58 -07:00
Bruno de Oliveira Abinader
7143408f69 [core] Implement MapDebugOptions::Wireframe
Together with MapDebugOptions::Collision, provides "wireframe" rendering
output so all drawn objects are visible. This mode ignores the line
width, background and fill colors for better visualization.

Fixes #4359.
2016-05-23 11:50:05 +03:00
Konstantin Käfer
ec70125e41 [core] move TileData and dependents to new *TileID classes 2016-05-10 14:50:56 +02:00
Konstantin Käfer
bdcbceff80 [core] move Tile to use UnwrappedTileID 2016-05-10 14:50:56 +02:00
Konstantin Käfer
dde59eaf76 [core] move Painter and dependents to new *TileID classes 2016-05-10 14:50:56 +02:00
Molly Lloyd
c86f558e9d [core] port outlinepattern for fill-pattern anti-aliasing from gl-js to native
add outlinepattern shader class to relevant files

add outlinepattern code to painter_fill.cpp

add outlinepattern code to fill_bucket

refactor painter_fill, fix tests

fix merge conflicts and setDepthSublayer

update render test to no antialiasing so travis will be happy
2016-04-28 17:13:20 -07:00
John Firebaugh
b2beeda50b [core] Adopt a strict naming convention for style properties
This will allow code to be generated from the style specification.
2016-04-21 14:05:40 -07:00
Ansis Brammanis
d2b9b1c348 [core] always set activeTexture before binding a texture 2016-04-14 17:12:56 -07:00
Ansis Brammanis
273600c16e [core] simplify conversions from pixels to tile units
fix #3768
2016-03-30 18:53:44 -07:00
Ansis Brammanis
b352bb81d8 [core] fix background-pattern rendering in perspective view
fix #3801
2016-03-28 16:59:39 -07:00
Konstantin Käfer
15bc11ab23 [core] cancel TileID::overscaling() 2016-03-08 13:34:17 +01:00
Bruno de Oliveira Abinader
8944e2c588 [core] Replaced raw values with util::tileSize 2016-03-03 17:02:15 +02:00
Bruno de Oliveira Abinader
9346a6d038 [core] Avoid precompute overscaling for TileID
Plus type change for zoom and removed redundant inlines.
2016-03-01 21:39:36 +00:00
John Firebaugh
9c26f06318 [core] Thread GLObjectStore through to Holder objects
This eliminates the reliance on ThreadContext to provide GLObjectStore, and statically enforces that GL cleanup functions happen only when GLObjectStore::performCleanup is called.

With the elimination of the Map thread, this becomes important because there may be multiple GLObjectStore's per-thread, and Map will need to ensure that the correct context is active when calling GLObjectStore::performCleanup.
2016-02-18 15:15:24 -08:00
Bruno de Oliveira Abinader
0386dc7a4e [gl] Use Shader::getID() whenever possible 2016-02-18 13:27:35 +02:00
Ansis Brammanis
4e0d1070f6 [core] support tiles with non-4096 extents
Convert all geometries to the maximum extent supported by our buffers
and then use that constant extent everywhere else.
2016-02-02 14:49:03 -08:00
John Firebaugh
9b62661b07 [core] Use experimental optional instead of mapbox::util::optional 2016-01-19 17:56:48 -08:00
kelvinabrokwa
73be3558d7 [core] seamless fill-pattern
seamless across dateline

upgrade test-suite version
2016-01-12 16:18:24 -08:00
John Firebaugh
45c7b472ad [core] Ensure GL state is set to necessary values in more places 2015-12-09 12:10:23 -08:00
John Firebaugh
e5181e2668 [core] Use optional where SpriteAtlas return values might not exist
Fixes #3162
2015-12-01 18:05:54 -08:00
John Firebaugh
1e350b7ea4 [core] Reorganize sprite related files 2015-11-12 13:03:14 -08:00
John Firebaugh
54e08b1f83 [core] Eliminate use of ClassProperties for paint 2015-11-10 11:33:17 -08:00
Bruno de Oliveira Abinader
5ef5d08867 [core] Reset GL values when needed 2015-11-06 20:05:01 +02:00
Bruno de Oliveira Abinader
8894982625 [core] Use GL_TRUE/GL_FALSE instead of true/false 2015-11-06 20:05:01 +02:00
Konstantin Käfer
8e63084c9e [core] Move remaining GL state from Painter into GLConfig object 2015-11-04 13:38:51 +01:00
John Firebaugh
3afc8b4a29 [core] Introduce StyleLayer subclasses 2015-10-22 09:34:40 -07:00
John Firebaugh
df89de5cc5 [core] Rationalize style property classes: <type>{Paint,Layout}Properties 2015-10-22 09:21:30 -07:00
Ansis Brammanis
9e68e49c89 fix depth clipping in perspective view
The depth range is now set slightly differently. Both ends of the range
are shifted for each layer to solve some precision issues.

Some layers draw multiple things at different depths. For example, fill
layers draw fills and antialiasing separately. To handle this case, I
added setDepthSublayer(n) which a
2015-08-24 18:41:51 -04:00
Bruno de Oliveira Abinader
58b93553c1 Replace size() with empty() whenever possible
Before C++11, std::list's implementation of size was O(n). It should be
all O(1) now, but it is probably still a good idea to use empty() to
emphasize the intend.
2015-07-29 11:03:47 +03:00
Konstantin Käfer
675ddddee7 Make pixelRatio constant across a Map object lifetime
also moves framebuffer size out of TransformState into its own object
2015-07-08 10:40:05 +02:00
Ansis Brammanis
9c03b396c0 Merge remote-tracking branch 'origin/master' into HEAD
Conflicts:
	src/mbgl/renderer/painter_fill.cpp
2015-06-03 19:20:41 -04:00
John Firebaugh
ec06bb7e3c Merge ResourceLoader into Style and move atlas ownership 2015-06-01 13:22:02 -07:00
Ansis Brammanis
ff6a5ce5bc Merge remote-tracking branch 'origin/master' into new-labelling
Conflicts:
	src/mbgl/map/source.cpp
	src/mbgl/map/source.hpp
	src/mbgl/map/tile_data.cpp
	src/mbgl/map/tile_parser.cpp
	src/mbgl/map/vector_tile_data.cpp
	src/mbgl/renderer/painter.cpp
	src/mbgl/renderer/symbol_bucket.cpp
	src/mbgl/text/glyph.hpp
	src/mbgl/text/glyph_store.cpp
	src/mbgl/text/placement.cpp
	test/suite
2015-05-28 20:01:15 -04:00
Ansis Brammanis
1e044a175c Reparse tiles when zoom level > source maxzoom
so that layout property functions are applied correctly
and so that label placement is redone

js:
https://github.com/mapbox/mapbox-gl-js/pull/1005
and
440bc02505
2015-05-28 19:17:07 -04:00
Konstantin Käfer
f4707f72e0 Replace mbgl::util::make_unique<> with std::make_unique<> 2015-05-26 17:57:38 +02:00
Konstantin Käfer
72964f5bef only update GL state when it actually changed 2015-05-04 17:33:05 +02:00
Konstantin Käfer
839b19330e remove hasData() from Bucket interface 2015-05-04 17:33:04 +02:00
Konstantin Käfer
dae18cc7bc remove some unused includes 2015-04-28 14:32:21 -04:00
Konstantin Käfer
c88a60b1e5 remove unused includes 2015-04-28 14:32:18 -04:00