From 2eed9f90243d7fa23585832e22d2bacdce32379e Mon Sep 17 00:00:00 2001 From: Hermet Park Date: Wed, 18 Dec 2024 18:58:37 +0900 Subject: [PATCH] lottie: ++exception handling dropshadow opacity range seems 0 ~ 256. make it sure in 0 ~ 255. --- src/loaders/lottie/tvgLottieBuilder.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/loaders/lottie/tvgLottieBuilder.cpp b/src/loaders/lottie/tvgLottieBuilder.cpp index bdfd5657..75e4e8c8 100644 --- a/src/loaders/lottie/tvgLottieBuilder.cpp +++ b/src/loaders/lottie/tvgLottieBuilder.cpp @@ -1343,7 +1343,8 @@ void LottieBuilder::updateEffect(LottieLayer* layer, float frameNo) case LottieEffect::DropShadow: { auto effect = static_cast(*ef); auto color = effect->color(frameNo); - layer->scene->push(SceneEffect::DropShadow, color.rgb[0], color.rgb[1], color.rgb[2], (int)effect->opacity(frameNo), effect->angle(frameNo), effect->distance(frameNo), effect->blurness(frameNo) * BLUR_TO_SIGMA, QUALITY); + //seems the opacity range in dropshadow is 0 ~ 256 + layer->scene->push(SceneEffect::DropShadow, color.rgb[0], color.rgb[1], color.rgb[2], std::min(255, (int)effect->opacity(frameNo)), effect->angle(frameNo), effect->distance(frameNo), effect->blurness(frameNo) * BLUR_TO_SIGMA, QUALITY); break; } case LottieEffect::GaussianBlur: {