diff --git a/src/loaders/lottie/tvgLottieBuilder.cpp b/src/loaders/lottie/tvgLottieBuilder.cpp index ba3cb50a..5c224bda 100644 --- a/src/loaders/lottie/tvgLottieBuilder.cpp +++ b/src/loaders/lottie/tvgLottieBuilder.cpp @@ -43,6 +43,16 @@ static bool _invisible(LottieGroup* group, int32_t frameNo) else return false; } +static bool _invisible(LottieLayer* layer, int32_t frameNo) +{ + if (frameNo < layer->inFrame || frameNo > layer->outFrame) { + if (layer->scene) layer->scene->opacity(0); + return true; + } + + return _invisible(static_cast(layer), frameNo); +} + static bool _updateTransform(LottieTransform* transform, int32_t frameNo, bool autoOrient, Matrix& matrix, uint8_t& opacity) {