Calculate and show the shadow from a spot light.
Change-Id: Ia558852e8cde5d33866b22875eb501e4c6858819
diff --git a/libs/hwui/OpenGLRenderer.cpp b/libs/hwui/OpenGLRenderer.cpp
index 22cd2d4..4f6da2b 100644
--- a/libs/hwui/OpenGLRenderer.cpp
+++ b/libs/hwui/OpenGLRenderer.cpp
@@ -3194,10 +3194,18 @@
paint.setColor(mCaches.propertyShadowStrength << 24);
paint.setAntiAlias(true); // want to use AlphaVertex
- VertexBuffer shadowVertexBuffer;
+ VertexBuffer ambientShadowVertexBuffer;
ShadowTessellator::tessellateAmbientShadow(width, height, casterTransform,
- shadowVertexBuffer);
- return drawVertexBuffer(shadowVertexBuffer, &paint);
+ ambientShadowVertexBuffer);
+ drawVertexBuffer(ambientShadowVertexBuffer, &paint);
+
+ VertexBuffer spotShadowVertexBuffer;
+ ShadowTessellator::tessellateSpotShadow(width, height,
+ getWidth(), getHeight(), casterTransform,
+ spotShadowVertexBuffer);
+ drawVertexBuffer(spotShadowVertexBuffer, &paint);
+
+ return DrawGlInfo::kStatusDrew;
}
status_t OpenGLRenderer::drawColorRects(const float* rects, int count, int color,