Loading libs/hwui/DisplayList.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -661,7 +661,8 @@ void DisplayList::iterate3dChildren(ChildrenSelectMode mode, OpenGLRenderer& ren if (mode == kNegativeZChildren && zValue > 0.0f) break; DisplayList* child = childOp->mDisplayList; if (mode == kPositiveZChildren && zValue > 0.0f && child->mCastsShadow) { if (mode == kPositiveZChildren && zValue > 0.0f && child->mCastsShadow && child->mAlpha > 0.0f) { /* draw shadow with parent matrix applied, passing in the child's total matrix * TODO: consider depth in more complex scenarios (neg z, added shadow depth) */ Loading libs/hwui/OpenGLRenderer.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -3233,7 +3233,7 @@ status_t OpenGLRenderer::drawShadow(const mat4& casterTransform, float casterAlp // draw caster's shadows if (mCaches.propertyAmbientShadowStrength > 0) { paint.setARGB(mCaches.propertyAmbientShadowStrength, 0, 0, 0); paint.setARGB(casterAlpha * mCaches.propertyAmbientShadowStrength, 0, 0, 0); VertexBuffer ambientShadowVertexBuffer; ShadowTessellator::tessellateAmbientShadow(casterPolygon, casterVertexCount, ambientShadowVertexBuffer); Loading @@ -3241,7 +3241,7 @@ status_t OpenGLRenderer::drawShadow(const mat4& casterTransform, float casterAlp } if (mCaches.propertySpotShadowStrength > 0) { paint.setARGB(mCaches.propertySpotShadowStrength, 0, 0, 0); paint.setARGB(casterAlpha * mCaches.propertySpotShadowStrength, 0, 0, 0); VertexBuffer spotShadowVertexBuffer; Vector3 lightPosScale(mCaches.propertyLightPosXScale, mCaches.propertyLightPosYScale, mCaches.propertyLightPosZScale); Loading Loading
libs/hwui/DisplayList.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -661,7 +661,8 @@ void DisplayList::iterate3dChildren(ChildrenSelectMode mode, OpenGLRenderer& ren if (mode == kNegativeZChildren && zValue > 0.0f) break; DisplayList* child = childOp->mDisplayList; if (mode == kPositiveZChildren && zValue > 0.0f && child->mCastsShadow) { if (mode == kPositiveZChildren && zValue > 0.0f && child->mCastsShadow && child->mAlpha > 0.0f) { /* draw shadow with parent matrix applied, passing in the child's total matrix * TODO: consider depth in more complex scenarios (neg z, added shadow depth) */ Loading
libs/hwui/OpenGLRenderer.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -3233,7 +3233,7 @@ status_t OpenGLRenderer::drawShadow(const mat4& casterTransform, float casterAlp // draw caster's shadows if (mCaches.propertyAmbientShadowStrength > 0) { paint.setARGB(mCaches.propertyAmbientShadowStrength, 0, 0, 0); paint.setARGB(casterAlpha * mCaches.propertyAmbientShadowStrength, 0, 0, 0); VertexBuffer ambientShadowVertexBuffer; ShadowTessellator::tessellateAmbientShadow(casterPolygon, casterVertexCount, ambientShadowVertexBuffer); Loading @@ -3241,7 +3241,7 @@ status_t OpenGLRenderer::drawShadow(const mat4& casterTransform, float casterAlp } if (mCaches.propertySpotShadowStrength > 0) { paint.setARGB(mCaches.propertySpotShadowStrength, 0, 0, 0); paint.setARGB(casterAlpha * mCaches.propertySpotShadowStrength, 0, 0, 0); VertexBuffer spotShadowVertexBuffer; Vector3 lightPosScale(mCaches.propertyLightPosXScale, mCaches.propertyLightPosYScale, mCaches.propertyLightPosZScale); Loading