Commit Graph

21 Commits

Author SHA1 Message Date
Konstantin Käfer
2a25270298 [core] move Texture related enums to gfx namespace 2019-03-12 11:03:54 +01:00
Konstantin Käfer
67a9dc35bf [core] move CullFaceMode to gfx namespace 2019-03-01 09:33:37 +01:00
Konstantin Käfer
4372ce2b90 [core] move StencilMode to gfx namespace 2019-03-01 09:33:37 +01:00
Konstantin Käfer
4982933a78 [core] move DepthMode to gfx namespace 2019-03-01 09:33:37 +01:00
Konstantin Käfer
da6e1390c6 [core] move ColorMode to gfx namespace 2019-03-01 09:33:37 +01:00
Konstantin Käfer
fd37d90650 [core] move draw mode and primitives to gfx namespace 2019-03-01 09:33:37 +01:00
Konstantin Käfer
95deab32ce [core] extract attribute structs and gl::Vertex to separate namespace 2019-03-01 09:33:37 +01:00
Mikhail Pozdnyakov
e800f37547 [core] Layer manager is responsible for buckets and layouts creation
This is a step to stop using of render layers in tile worker thread.
2019-02-25 13:47:56 +02:00
Mikhail Pozdnyakov
d37918c169 [core] Split layer type specific code in mbgl::Programs
Progams code for a certain layer type is encapsulted within
a dedicated `<layer type>Programs` class, inherited from
the generic base `LayerTypePrograms` class.

`mbgl::Programs::get<layer type>Programs()` lazily initializes the
layer type-specific programs code using pointer to the base class,
which allows LTO to remove this code from binaries (if the corresponding
`get<layer type>Programs()` method can never be invoked).
2019-01-11 16:43:52 +02:00
Mikhail Pozdnyakov
361982fef8 [core][Android][Darwin] LayerManager creates RenderLayer instances
`LayerManager` is now responsible for `RenderLayer` instances creation,
so that there is a single entry point for creating of objects, which
correspond to a certain layer type.

The `LayerType type` field is dropped from `Layer::Impl`.
2018-11-27 18:10:21 +02:00
Alexander Shalamov
a7274f66d0 [core] Move layer specific color ramp updates behind common update() method 2018-11-19 14:06:21 +02:00
Bruno de Oliveira Abinader
05a7b78aa8 [core] Add face culling mode parameter to Program::draw
Add a parameter to Program::draw to control whether face culling should
be enabled. This will be used in a follow up commit to enable face
culling for fill extrusion layers.
2018-09-13 08:42:36 +03:00
Molly Lloyd
4a5dc37245 [core] Implement CrossFadedDataDrivenProperty to add support for feature expressions in *-pattern properties 2018-08-31 13:08:47 -07:00
John Firebaugh
f6659c729f [core] Use hand-rolled RTTI 2018-07-24 11:08:40 -07:00
John Firebaugh
2bbc792060 [core] Check all bucket dynamic_casts
A mismatch can occur when a layer changes from one type to another.
2018-07-24 11:08:40 -07:00
Fabian Guerra
30376f3ce1 Merge branch 'release-boba' into master
# Conflicts:
#	mapbox-gl-js
#	platform/android/CHANGELOG.md
#	platform/android/MapboxGLAndroidSDK/gradle.properties
#	platform/android/gradle/dependencies.gradle
#	platform/darwin/src/MGLVectorTileSource.mm
#	platform/darwin/src/MGLVectorTileSource_Private.h
#	platform/ios/CHANGELOG.md
#	src/mbgl/style/expression/compound_expression.cpp
2018-05-17 11:47:31 -04:00
Konstantin Käfer
c3346f473a [core] Don't crash when attribute count is exceeded 2018-05-03 16:31:43 -07:00
Chris Loer
f86fe44dbd [core] fix circle querying for scale and alignment
This fixes circle querying for cases where either
    circle-pitch-alignment=map
or
    circle-pitch-scaling=viewport
2018-04-26 18:03:17 -04:00
Chris Loer
91f6e09dad [core] Don't reuse heatmap render texture on viewport resize.
Fixes issue #11228.
2018-02-26 14:23:01 -08:00
Chris Loer
b79a1cc82e [core] Don't reuse heatmap render texture on viewport resize.
Fixes issue #11228.
2018-02-22 09:10:13 -08:00
Vladimir Agafonkin
82de856c94 [core, ios, macos, android, node] Heatmap layer (#11046)
Co-Authored-By: Konstantin Käfer <mail@kkaefer.com>
Co-Authored-By: Anand Thakker <anandthakker@users.noreply.github.com>
Co-Authored-By: Minh Nguyễn <1ec5@users.noreply.github.com>
2018-02-15 17:38:23 +02:00