summaryrefslogtreecommitdiff
path: root/src/mbgl/renderer
diff options
context:
space:
mode:
Diffstat (limited to 'src/mbgl/renderer')
-rw-r--r--src/mbgl/renderer/layers/render_background_layer.cpp2
-rw-r--r--src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp4
-rw-r--r--src/mbgl/renderer/layers/render_fill_layer.cpp2
-rw-r--r--src/mbgl/renderer/paint_property_binder.hpp13
4 files changed, 12 insertions, 9 deletions
diff --git a/src/mbgl/renderer/layers/render_background_layer.cpp b/src/mbgl/renderer/layers/render_background_layer.cpp
index a563d49611..4171e3a670 100644
--- a/src/mbgl/renderer/layers/render_background_layer.cpp
+++ b/src/mbgl/renderer/layers/render_background_layer.cpp
@@ -91,7 +91,7 @@ void RenderBackgroundLayer::render(PaintParameters& parameters, RenderSource*) {
for (const auto& tileID : util::tileCover(parameters.state, parameters.state.getIntegerZoom())) {
draw(
parameters.programs.getBackgroundLayerPrograms().backgroundPattern,
- BackgroundPatternUniforms::values(
+ BackgroundPatternProgram::uniformValues(
parameters.matrixForTile(tileID),
evaluated.get<BackgroundOpacity>(),
parameters.imageManager.getPixelSize(),
diff --git a/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp b/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp
index 0a22f89341..fe1641a092 100644
--- a/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp
+++ b/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp
@@ -114,7 +114,7 @@ void RenderFillExtrusionLayer::render(PaintParameters& parameters, RenderSource*
draw(
parameters.programs.getFillExtrusionLayerPrograms().fillExtrusion.get(evaluated),
bucket,
- FillExtrusionUniforms::values(
+ FillExtrusionProgram::uniformValues(
tile.translatedClipMatrix(evaluated.get<FillExtrusionTranslate>(),
evaluated.get<FillExtrusionTranslateAnchor>(),
parameters.state),
@@ -141,7 +141,7 @@ void RenderFillExtrusionLayer::render(PaintParameters& parameters, RenderSource*
draw(
parameters.programs.getFillExtrusionLayerPrograms().fillExtrusionPattern.get(evaluated),
bucket,
- FillExtrusionPatternUniforms::values(
+ FillExtrusionPatternProgram::uniformValues(
tile.translatedClipMatrix(evaluated.get<FillExtrusionTranslate>(),
evaluated.get<FillExtrusionTranslateAnchor>(),
parameters.state),
diff --git a/src/mbgl/renderer/layers/render_fill_layer.cpp b/src/mbgl/renderer/layers/render_fill_layer.cpp
index c2e62acae2..9b4a5c6361 100644
--- a/src/mbgl/renderer/layers/render_fill_layer.cpp
+++ b/src/mbgl/renderer/layers/render_fill_layer.cpp
@@ -166,7 +166,7 @@ void RenderFillLayer::render(PaintParameters& parameters, RenderSource*) {
paintPropertyBinders.setPatternParameters(patternPosA, patternPosB, crossfade);
const auto allUniformValues = programInstance.computeAllUniformValues(
- FillPatternUniforms::values(
+ FillPatternProgram::uniformValues(
tile.translatedMatrix(evaluated.get<FillTranslate>(),
evaluated.get<FillTranslateAnchor>(),
parameters.state),
diff --git a/src/mbgl/renderer/paint_property_binder.hpp b/src/mbgl/renderer/paint_property_binder.hpp
index a382597995..9449ca5823 100644
--- a/src/mbgl/renderer/paint_property_binder.hpp
+++ b/src/mbgl/renderer/paint_property_binder.hpp
@@ -1,5 +1,6 @@
#pragma once
+#include <mbgl/gfx/uniform.hpp>
#include <mbgl/programs/attributes.hpp>
#include <mbgl/gl/attribute.hpp>
#include <mbgl/gl/uniform.hpp>
@@ -419,7 +420,8 @@ struct ZoomInterpolatedAttribute {
};
template <class Attr>
-struct InterpolationUniform : gl::UniformScalar<float> {
+struct InterpolationUniformType {
+ using Value = float;
static auto name() {
static const std::string name = Attr::name() + std::string("_t");
return name.c_str();
@@ -439,7 +441,7 @@ private:
struct Detail<T, UniformValueType, PossiblyEvaluatedType, TypeList<As...>> {
using Binder = PaintPropertyBinder<T, UniformValueType, PossiblyEvaluatedType, typename As::Type...>;
using ZoomInterpolatedAttributeList = TypeList<ZoomInterpolatedAttribute<As>...>;
- using InterpolationUniformList = TypeList<InterpolationUniform<As>...>;
+ using InterpolationUniformTypeList = TypeList<InterpolationUniformType<As>...>;
};
template <class P>
@@ -483,7 +485,7 @@ public:
template <class P>
using ZoomInterpolatedAttributeList = typename Property<P>::ZoomInterpolatedAttributeList;
template <class P>
- using InterpolationUniformList = typename Property<P>::InterpolationUniformList;
+ using InterpolationUniformTypeList = typename Property<P>::InterpolationUniformTypeList;
using Attributes = typename TypeListConcat<ZoomInterpolatedAttributeList<Ps>...>::template ExpandInto<gl::Attributes>;
using AttributeBindings = typename Attributes::Bindings;
@@ -495,8 +497,9 @@ public:
) };
}
- using Uniforms = typename TypeListConcat<InterpolationUniformList<Ps>..., typename Ps::Uniforms...>::template ExpandInto<gl::Uniforms>;
- using UniformValues = typename Uniforms::Values;
+ using UniformTypeList = TypeListConcat<InterpolationUniformTypeList<Ps>..., typename Ps::Uniforms...>;
+ using UniformValues = gfx::UniformValues<UniformTypeList>;
+ using Uniforms = typename UniformTypeList::template ExpandInto<gl::Uniforms>;
template <class EvaluatedProperties>
UniformValues uniformValues(float currentZoom, EvaluatedProperties& currentProperties) const {