#include #include #include #include namespace mbgl { void Painter::renderClippingMask(const UnwrappedTileID& tileID, const ClipID& clip) { static const style::FillPaintProperties::Evaluated properties {}; static const FillProgram::PaintPropertyBinders paintAttibuteData(properties, 0); programs->fill.draw( context, gl::Triangles(), gl::DepthMode::disabled(), gl::StencilMode { gl::StencilMode::Always(), static_cast(clip.reference.to_ulong()), 0b11111111, gl::StencilMode::Keep, gl::StencilMode::Keep, gl::StencilMode::Replace }, gl::ColorMode::disabled(), FillProgram::UniformValues { uniforms::u_matrix::Value{ matrixForTile(tileID) }, uniforms::u_world::Value{ context.viewport.getCurrentValue().size }, }, tileVertexBuffer, tileTriangleIndexBuffer, tileTriangleSegments, paintAttibuteData, properties, state.getZoom() ); } } // namespace mbgl