This repository has been archived by the owner on Aug 8, 2023. It is now read-only.
Port data-driven styling (property functions) from GL JS #4860
Labels
Core
The cross-platform C++ core, aka mbgl
feature
GL JS parity
For feature parity with Mapbox GL JS
Milestone
Port data-driven styling from GL JS (see mapbox/mapbox-gl-js#1626). DDS is currently exposed as property functions in the style specification.
Master list of what's needed. Not necessarily in implementation order.
LayoutProperty
andPaintProperty
classes such that unevaluated and evaluated properties live in separate structures (in progress, @jfirebaugh).gl::Drawable
/gl::Context
need support for multiple vertex buffers.Function
⇢ZoomFunction
.PropertyFunction
andZoomPropertyFunction
. Add evaluators for them.PropertyFunction
andZoomPropertyFunction
as variant types forPropertyValue
.PropertyValue
into one variant for properties that are known to be feature-constant (undefined, constant, or zoom function) and one for properties that are data-driven (property function or zoom property function).Style
. Instead, pass cascaded paint properties into the bucket. Bucket figures out which are feature constant and which are data-driven, producing aProgramConfiguration
(orPaintConfiguration
?). In theProgramConfiguration
:ZoomFunction
which will be evaluated by the main thread and the result bound to a uniformglDisableVertexAttribArray
/glVertexAttrib*
or dynamically-generated shader uniforms?std::vector
).PaintConfiguration
for each bucket in place (if not).The text was updated successfully, but these errors were encountered: