[core] s/Wireframe/Overdraw/g
This commit is contained in:
@@ -43,7 +43,7 @@ enum class MapDebugOptions : EnumType {
|
||||
ParseStatus = 1 << 2,
|
||||
Timestamps = 1 << 3,
|
||||
Collision = 1 << 4,
|
||||
Wireframe = 1 << 5,
|
||||
Overdraw = 1 << 5,
|
||||
// FIXME: https://github.com/mapbox/mapbox-gl-native/issues/5117
|
||||
#ifndef GL_ES_VERSION_2_0
|
||||
StencilClip = 1 << 6,
|
||||
|
||||
@@ -33,7 +33,7 @@ Mapbox welcomes participation and contributions from everyone. Please read [CON
|
||||
- Removed unused SVG files from the SDK’s resource bundle. ([#4641](https://github.com/mapbox/mapbox-gl-native/pull/4641))
|
||||
- Deprecated `-[MGLMapView emptyMemoryCache]`. ([#4725](https://github.com/mapbox/mapbox-gl-native/pull/4725))
|
||||
- Added `MGLCoordinateInCoordinateBounds()`, a function that tests whether or not a coordinate is in a given bounds. ([#5053](https://github.com/mapbox/mapbox-gl-native/pull/5053))
|
||||
- Added a new option to `MGLMapDebugMaskOptions`, `MGLMapDebugWireframesMask`, that shows wireframes instead of the usual rendered output. ([#4359](https://github.com/mapbox/mapbox-gl-native/pull/4359))
|
||||
- Added a new option to `MGLMapDebugMaskOptions`, `MGLMapDebugOverdrawsMask`, that shows wireframes for overdraw inspection instead of the usual rendered output. ([#4359](https://github.com/mapbox/mapbox-gl-native/pull/4359))
|
||||
|
||||
## 3.2.3
|
||||
|
||||
|
||||
@@ -181,9 +181,9 @@ static NSString * const MBXViewControllerAnnotationViewReuseIdentifer = @"MBXVie
|
||||
((debugMask & MGLMapDebugCollisionBoxesMask)
|
||||
? @"Hide Collision Boxes"
|
||||
: @"Show Collision Boxes"),
|
||||
((debugMask & MGLMapDebugWireframesMask)
|
||||
? @"Hide Wireframes"
|
||||
: @"Show Wireframes"),
|
||||
((debugMask & MGLMapDebugOverdrawsMask)
|
||||
? @"Hide Overdraws"
|
||||
: @"Show Overdraws"),
|
||||
@"Add 100 Points",
|
||||
@"Add 1,000 Points",
|
||||
@"Add 10,000 Points",
|
||||
@@ -226,7 +226,7 @@ static NSString * const MBXViewControllerAnnotationViewReuseIdentifer = @"MBXVie
|
||||
}
|
||||
else if (buttonIndex == actionSheet.firstOtherButtonIndex + 5)
|
||||
{
|
||||
self.mapView.debugMask ^= MGLMapDebugWireframesMask;
|
||||
self.mapView.debugMask ^= MGLMapDebugOverdrawsMask;
|
||||
}
|
||||
else if (buttonIndex == actionSheet.firstOtherButtonIndex + 6)
|
||||
{
|
||||
|
||||
@@ -43,9 +43,8 @@ typedef NS_OPTIONS(NSUInteger, MGLMapDebugMaskOptions) {
|
||||
/** Edges of glyphs and symbols are shown as faint, green lines to help
|
||||
diagnose collision and label placement issues. */
|
||||
MGLMapDebugCollisionBoxesMask = 1 << 4,
|
||||
/** Line widths, backgrounds, and fill colors are ignored to create a
|
||||
wireframe effect. */
|
||||
MGLMapDebugWireframesMask = 1 << 5,
|
||||
/** Overdraw inspector. */
|
||||
MGLMapDebugOverdrawsMask = 1 << 5,
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
@@ -1829,9 +1829,9 @@ mbgl::Duration MGLDurationInSeconds(NSTimeInterval duration)
|
||||
{
|
||||
mask |= MGLMapDebugCollisionBoxesMask;
|
||||
}
|
||||
if (options & mbgl::MapDebugOptions::Wireframe)
|
||||
if (options & mbgl::MapDebugOptions::Overdraw)
|
||||
{
|
||||
mask |= MGLMapDebugWireframesMask;
|
||||
mask |= MGLMapDebugOverdrawsMask;
|
||||
}
|
||||
return mask;
|
||||
}
|
||||
@@ -1855,9 +1855,9 @@ mbgl::Duration MGLDurationInSeconds(NSTimeInterval duration)
|
||||
{
|
||||
options |= mbgl::MapDebugOptions::Collision;
|
||||
}
|
||||
if (debugMask & MGLMapDebugWireframesMask)
|
||||
if (debugMask & MGLMapDebugOverdrawsMask)
|
||||
{
|
||||
options |= mbgl::MapDebugOptions::Wireframe;
|
||||
options |= mbgl::MapDebugOptions::Overdraw;
|
||||
}
|
||||
_mbglMap->setDebug(options);
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# Changelog for Mapbox macOS SDK
|
||||
|
||||
## master
|
||||
* Refactor wireframe mode to match GL JS overdraw implementation. ([#5403](https://github.com/mapbox/mapbox-gl-native/pull/5403)).
|
||||
|
||||
## 0.2.0
|
||||
|
||||
|
||||
@@ -461,10 +461,10 @@
|
||||
<action selector="toggleCollisionBoxes:" target="-1" id="EYa-7n-iWZ"/>
|
||||
</connections>
|
||||
</menuItem>
|
||||
<menuItem title="Show Wireframes" id="hSX-Be-8xC">
|
||||
<menuItem title="Show Overdraws" id="hSX-Be-8xC">
|
||||
<modifierMask key="keyEquivalentModifierMask"/>
|
||||
<connections>
|
||||
<action selector="toggleWireframes:" target="-1" id="usj-ug-upt"/>
|
||||
<action selector="toggleOverdraws:" target="-1" id="usj-ug-upt"/>
|
||||
</connections>
|
||||
</menuItem>
|
||||
<menuItem isSeparatorItem="YES" id="2EG-Hp-4FA"/>
|
||||
|
||||
@@ -276,8 +276,8 @@ NS_ARRAY_OF(id <MGLAnnotation>) *MBXFlattenedShapes(NS_ARRAY_OF(id <MGLAnnotatio
|
||||
self.mapView.debugMask ^= MGLMapDebugCollisionBoxesMask;
|
||||
}
|
||||
|
||||
- (IBAction)toggleWireframes:(id)sender {
|
||||
self.mapView.debugMask ^= MGLMapDebugWireframesMask;
|
||||
- (IBAction)toggleOverdraws:(id)sender {
|
||||
self.mapView.debugMask ^= MGLMapDebugOverdrawsMask;
|
||||
}
|
||||
|
||||
- (IBAction)showColorBuffer:(id)sender {
|
||||
@@ -604,9 +604,9 @@ NS_ARRAY_OF(id <MGLAnnotation>) *MBXFlattenedShapes(NS_ARRAY_OF(id <MGLAnnotatio
|
||||
menuItem.title = isShown ? @"Hide Collision Boxes" : @"Show Collision Boxes";
|
||||
return YES;
|
||||
}
|
||||
if (menuItem.action == @selector(toggleWireframes:)) {
|
||||
BOOL isShown = self.mapView.debugMask & MGLMapDebugWireframesMask;
|
||||
menuItem.title = isShown ? @"Hide Wireframes" : @"Show Wireframes";
|
||||
if (menuItem.action == @selector(toggleOverdraws:)) {
|
||||
BOOL isShown = self.mapView.debugMask & MGLMapDebugOverdrawsMask;
|
||||
menuItem.title = isShown ? @"Hide Overdraws" : @"Show Overdraws";
|
||||
return YES;
|
||||
}
|
||||
if (menuItem.action == @selector(showColorBuffer:)) {
|
||||
|
||||
@@ -21,9 +21,8 @@ typedef NS_OPTIONS(NSUInteger, MGLMapDebugMaskOptions) {
|
||||
diagnose collision and label placement issues. */
|
||||
MGLMapDebugCollisionBoxesMask = 1 << 4,
|
||||
|
||||
/** Line widths, backgrounds, and fill colors are ignored to create a
|
||||
wireframe effect. */
|
||||
MGLMapDebugWireframesMask = 1 << 5,
|
||||
/** Overdraw inspector. */
|
||||
MGLMapDebugOverdrawsMask = 1 << 5,
|
||||
|
||||
/** The stencil buffer is shown instead of the color buffer. */
|
||||
MGLMapDebugStencilBufferMask = 1 << 6,
|
||||
|
||||
@@ -2398,8 +2398,8 @@ public:
|
||||
if (options & mbgl::MapDebugOptions::Collision) {
|
||||
mask |= MGLMapDebugCollisionBoxesMask;
|
||||
}
|
||||
if (options & mbgl::MapDebugOptions::Wireframe) {
|
||||
mask |= MGLMapDebugWireframesMask;
|
||||
if (options & mbgl::MapDebugOptions::Overdraw) {
|
||||
mask |= MGLMapDebugOverdrawsMask;
|
||||
}
|
||||
if (options & mbgl::MapDebugOptions::StencilClip) {
|
||||
mask |= MGLMapDebugStencilBufferMask;
|
||||
@@ -2421,8 +2421,8 @@ public:
|
||||
if (debugMask & MGLMapDebugCollisionBoxesMask) {
|
||||
options |= mbgl::MapDebugOptions::Collision;
|
||||
}
|
||||
if (debugMask & MGLMapDebugWireframesMask) {
|
||||
options |= mbgl::MapDebugOptions::Wireframe;
|
||||
if (debugMask & MGLMapDebugOverdrawsMask) {
|
||||
options |= mbgl::MapDebugOptions::Overdraw;
|
||||
}
|
||||
if (debugMask & MGLMapDebugStencilBufferMask) {
|
||||
options |= mbgl::MapDebugOptions::StencilClip;
|
||||
|
||||
@@ -787,14 +787,14 @@ void Map::cycleDebugOptions() {
|
||||
#ifndef GL_ES_VERSION_2_0
|
||||
if (impl->debugOptions & MapDebugOptions::StencilClip)
|
||||
impl->debugOptions = MapDebugOptions::NoDebug;
|
||||
else if (impl->debugOptions & MapDebugOptions::Wireframe)
|
||||
else if (impl->debugOptions & MapDebugOptions::Overdraw)
|
||||
impl->debugOptions = MapDebugOptions::StencilClip;
|
||||
#else
|
||||
if (impl->debugOptions & MapDebugOptions::Wireframe)
|
||||
if (impl->debugOptions & MapDebugOptions::Overdraw)
|
||||
impl->debugOptions = MapDebugOptions::NoDebug;
|
||||
#endif // GL_ES_VERSION_2_0
|
||||
else if (impl->debugOptions & MapDebugOptions::Collision)
|
||||
impl->debugOptions = MapDebugOptions::Wireframe;
|
||||
impl->debugOptions = MapDebugOptions::Overdraw;
|
||||
else if (impl->debugOptions & MapDebugOptions::Timestamps)
|
||||
impl->debugOptions = impl->debugOptions | MapDebugOptions::Collision;
|
||||
else if (impl->debugOptions & MapDebugOptions::ParseStatus)
|
||||
|
||||
@@ -145,7 +145,7 @@ void Painter::render(const Style& style, const FrameData& frame_, SpriteAtlas& a
|
||||
config.depthMask = GL_TRUE;
|
||||
config.colorMask = { GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE };
|
||||
|
||||
if (isWireframe()) {
|
||||
if (isOverdraw()) {
|
||||
config.blend = GL_TRUE;
|
||||
config.blendFunc = { GL_CONSTANT_COLOR, GL_ONE };
|
||||
const float overdraw = 1.0f / 8.0f;
|
||||
@@ -248,7 +248,7 @@ void Painter::renderPass(RenderPass pass_,
|
||||
if (!layer.baseImpl->hasRenderPass(pass))
|
||||
continue;
|
||||
|
||||
if (isWireframe()) {
|
||||
if (isOverdraw()) {
|
||||
config.blend = GL_TRUE;
|
||||
} else if (pass == RenderPass::Translucent) {
|
||||
config.blendFunc.reset();
|
||||
|
||||
@@ -156,7 +156,7 @@ private:
|
||||
|
||||
void setDepthSublayer(int n);
|
||||
|
||||
bool isWireframe() const { return frame.debugOptions & MapDebugOptions::Wireframe; }
|
||||
bool isOverdraw() const { return frame.debugOptions & MapDebugOptions::Overdraw; }
|
||||
|
||||
mat4 projMatrix;
|
||||
mat4 nativeMatrix;
|
||||
|
||||
@@ -28,7 +28,7 @@ void Painter::renderBackground(const BackgroundLayer& layer) {
|
||||
if (!imagePosA || !imagePosB)
|
||||
return;
|
||||
|
||||
config.program = isWireframe() ? patternShader->getOverdrawID() : patternShader->getID();
|
||||
config.program = isOverdraw() ? patternShader->getOverdrawID() : patternShader->getID();
|
||||
patternShader->u_matrix = identityMatrix;
|
||||
patternShader->u_pattern_tl_a = imagePosA->tl;
|
||||
patternShader->u_pattern_br_a = imagePosA->br;
|
||||
@@ -44,7 +44,7 @@ void Painter::renderBackground(const BackgroundLayer& layer) {
|
||||
plainShader->u_color = properties.backgroundColor;
|
||||
plainShader->u_opacity = properties.backgroundOpacity;
|
||||
|
||||
config.program = isWireframe() ? plainShader->getOverdrawID() : plainShader->getID();
|
||||
config.program = isOverdraw() ? plainShader->getOverdrawID() : plainShader->getID();
|
||||
backgroundArray.bind(*plainShader, tileStencilBuffer, BUFFER_OFFSET(0), store);
|
||||
}
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ void Painter::renderCircle(CircleBucket& bucket,
|
||||
mat4 vtxMatrix = translatedMatrix(matrix, properties.circleTranslate, tileID,
|
||||
properties.circleTranslateAnchor);
|
||||
|
||||
config.program = isWireframe() ? circleShader->getOverdrawID() : circleShader->getID();
|
||||
config.program = isOverdraw() ? circleShader->getOverdrawID() : circleShader->getID();
|
||||
|
||||
circleShader->u_matrix = vtxMatrix;
|
||||
circleShader->u_extrude_scale = extrudeScale;
|
||||
|
||||
@@ -46,7 +46,7 @@ void Painter::renderFill(FillBucket& bucket,
|
||||
// Because we're drawing top-to-bottom, and we update the stencil mask
|
||||
// befrom, we have to draw the outline first (!)
|
||||
if (outline && pass == RenderPass::Translucent) {
|
||||
config.program = isWireframe() ? outlineShader->getOverdrawID() : outlineShader->getID();
|
||||
config.program = isOverdraw() ? outlineShader->getOverdrawID() : outlineShader->getID();
|
||||
outlineShader->u_matrix = vertexMatrix;
|
||||
|
||||
outlineShader->u_outline_color = strokeColor;
|
||||
@@ -76,7 +76,7 @@ void Painter::renderFill(FillBucket& bucket,
|
||||
|
||||
// Image fill.
|
||||
if (pass == RenderPass::Translucent && imagePosA && imagePosB) {
|
||||
config.program = isWireframe() ? patternShader->getOverdrawID() : patternShader->getID();
|
||||
config.program = isOverdraw() ? patternShader->getOverdrawID() : patternShader->getID();
|
||||
patternShader->u_matrix = vertexMatrix;
|
||||
patternShader->u_pattern_tl_a = imagePosA->tl;
|
||||
patternShader->u_pattern_br_a = imagePosA->br;
|
||||
@@ -105,7 +105,7 @@ void Painter::renderFill(FillBucket& bucket,
|
||||
bucket.drawElements(*patternShader, store);
|
||||
|
||||
if (properties.fillAntialias && !isOutlineColorDefined) {
|
||||
config.program = isWireframe() ? outlinePatternShader->getOverdrawID() : outlinePatternShader->getID();
|
||||
config.program = isOverdraw() ? outlinePatternShader->getOverdrawID() : outlinePatternShader->getID();
|
||||
outlinePatternShader->u_matrix = vertexMatrix;
|
||||
|
||||
// Draw the entire line
|
||||
@@ -140,7 +140,7 @@ void Painter::renderFill(FillBucket& bucket,
|
||||
// fragments or when it's translucent and we're drawing translucent
|
||||
// fragments
|
||||
// Draw filling rectangle.
|
||||
config.program = isWireframe() ? plainShader->getOverdrawID() : plainShader->getID();
|
||||
config.program = isOverdraw() ? plainShader->getOverdrawID() : plainShader->getID();
|
||||
plainShader->u_matrix = vertexMatrix;
|
||||
plainShader->u_color = fillColor;
|
||||
plainShader->u_opacity = opacity;
|
||||
@@ -154,7 +154,7 @@ void Painter::renderFill(FillBucket& bucket,
|
||||
// Because we're drawing top-to-bottom, and we update the stencil mask
|
||||
// below, we have to draw the outline first (!)
|
||||
if (fringeline && pass == RenderPass::Translucent) {
|
||||
config.program = isWireframe() ? outlineShader->getOverdrawID() : outlineShader->getID();
|
||||
config.program = isOverdraw() ? outlineShader->getOverdrawID() : outlineShader->getID();
|
||||
outlineShader->u_matrix = vertexMatrix;
|
||||
|
||||
outlineShader->u_outline_color = fillColor;
|
||||
|
||||
@@ -57,7 +57,7 @@ void Painter::renderLine(LineBucket& bucket,
|
||||
|
||||
if (!properties.lineDasharray.value.from.empty()) {
|
||||
|
||||
config.program = isWireframe() ? linesdfShader->getOverdrawID() : linesdfShader->getID();
|
||||
config.program = isOverdraw() ? linesdfShader->getOverdrawID() : linesdfShader->getID();
|
||||
|
||||
linesdfShader->u_matrix = vtxMatrix;
|
||||
linesdfShader->u_linewidth = properties.lineWidth / 2;
|
||||
@@ -102,7 +102,7 @@ void Painter::renderLine(LineBucket& bucket,
|
||||
if (!imagePosA || !imagePosB)
|
||||
return;
|
||||
|
||||
config.program = isWireframe() ? linepatternShader->getOverdrawID() : linepatternShader->getID();
|
||||
config.program = isOverdraw() ? linepatternShader->getOverdrawID() : linepatternShader->getID();
|
||||
|
||||
linepatternShader->u_matrix = vtxMatrix;
|
||||
linepatternShader->u_linewidth = properties.lineWidth / 2;
|
||||
@@ -138,7 +138,7 @@ void Painter::renderLine(LineBucket& bucket,
|
||||
bucket.drawLinePatterns(*linepatternShader, store);
|
||||
|
||||
} else {
|
||||
config.program = isWireframe() ? lineShader->getOverdrawID() : lineShader->getID();
|
||||
config.program = isOverdraw() ? lineShader->getOverdrawID() : lineShader->getID();
|
||||
|
||||
lineShader->u_matrix = vtxMatrix;
|
||||
lineShader->u_linewidth = properties.lineWidth / 2;
|
||||
|
||||
@@ -18,7 +18,7 @@ void Painter::renderRaster(RasterBucket& bucket,
|
||||
const RasterPaintProperties& properties = layer.impl->paint;
|
||||
|
||||
if (bucket.hasData()) {
|
||||
config.program = isWireframe() ? rasterShader->getOverdrawID() : rasterShader->getID();
|
||||
config.program = isOverdraw() ? rasterShader->getOverdrawID() : rasterShader->getID();
|
||||
rasterShader->u_matrix = matrix;
|
||||
rasterShader->u_buffer = 0;
|
||||
rasterShader->u_opacity = properties.rasterOpacity;
|
||||
|
||||
@@ -58,7 +58,7 @@ void Painter::renderSDF(SymbolBucket &bucket,
|
||||
exScale = {{ exScale[0] * scale, exScale[1] * scale }};
|
||||
}
|
||||
|
||||
config.program = isWireframe() ? sdfShader.getOverdrawID() : sdfShader.getID();
|
||||
config.program = isOverdraw() ? sdfShader.getOverdrawID() : sdfShader.getID();
|
||||
sdfShader.u_matrix = vtxMatrix;
|
||||
sdfShader.u_extrude_scale = exScale;
|
||||
sdfShader.u_texsize = texsize;
|
||||
@@ -199,7 +199,7 @@ void Painter::renderSymbol(SymbolBucket& bucket,
|
||||
exScale = {{ exScale[0] * scale, exScale[1] * scale }};
|
||||
}
|
||||
|
||||
config.program = isWireframe() ? iconShader->getOverdrawID() : iconShader->getID();
|
||||
config.program = isOverdraw() ? iconShader->getOverdrawID() : iconShader->getID();
|
||||
iconShader->u_matrix = vtxMatrix;
|
||||
iconShader->u_extrude_scale = exScale;
|
||||
iconShader->u_texsize = {{ float(activeSpriteAtlas->getWidth()) / 4.0f, float(activeSpriteAtlas->getHeight()) / 4.0f }};
|
||||
|
||||
@@ -272,8 +272,8 @@ RenderData Style::getRenderData(MapDebugOptions debugOptions) const {
|
||||
continue;
|
||||
|
||||
if (const BackgroundLayer* background = layer->as<BackgroundLayer>()) {
|
||||
if (debugOptions & MapDebugOptions::Wireframe) {
|
||||
// We want to skip glClear optimization in wireframe mode.
|
||||
if (debugOptions & MapDebugOptions::Overdraw) {
|
||||
// We want to skip glClear optimization in overdraw mode.
|
||||
result.order.emplace_back(*layer);
|
||||
continue;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user