-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Is this still supported? #3
Comments
it's not actively supported. |
@bodymovin Hey just wanted to let you know we dropped IE11 support at Airbnb and are attempting to use this as SMIL is reasonably supported on all browsers and we've been able to test against some animations that work quite well. Do you have any idea of the level of effort that would be required to resolve this issue? We believe that not needing the lottie runtime and some minimal normalization unlocks lottie on web/mobile-web in a performant manner given recent changes to GPU accelerate SVG's as well as the excellent compression of the source files. We have been able to save in older formats to get around it for the most part, but it definitely presents challenges. |
@calinoracation hi, I've done some updates in the last couple of days and most of what was working before should be working now plus a couple more fixes in the process. |
@bodymovin I will absolutely give it a try, thanks so much! Really exciting to see this progress. |
@bodymovin Sorry for the delay, it's been so busy! We're working on trying this out locally as a new version isn't published just yet. |
@bodymovin We didn't have much luck with the new version yet, it didn't fail but the animation looked incorrect. Will provide additional details soon, would it be helpful to share the conversion code we're using to turn the SMIL into a toggleable react component? |
yes please. And if possible, can you share the animation? |
I have shared a zip file with the conversion code and also a json file that didn't convert the animation correctly. please reach out if you have any questions. Thank you! |
@sssomnus would you mind sharing the .aep as well? |
what .aep file are you referring to? |
@sssomnus do you have the original animation that was exported to the json? |
the original animation is a svg file, do you need it? |
@sssomnus yes please. Out of curiosity how did you convert the animated svg to a json? |
lottie_files 2.zip |
thanks @sssomnus @calinoracation , if you happen to have the After Effects project (.aep), that would be very helpful. In the meantime I'll see what I can find out with this files. |
@sssomnus @calinoracation it looks like this animation has been exported with the old format, that's why it's not working well. Have you tried exporting it with a newer version of bodymovin? |
We have! Let me try to get you the newer format one, we must of sent the wrong version over. |
lottie.zip |
@sssomnus @calinoracation both files seem to be equal, and they are exported with version 5.1.15 of bodymovin, which is the same as the previous shared file. |
@bodymovin I've attached 2 new ones, the changes you made didn't quite fix it for us. Here's a bit of debug output I made from adding some try/catches, it will work if I continue and don't export the layers, but it doesn't look correct. motion.icon.export.mp4{
targetName: '_R_G_L_0_G_L_1_G_L_1_G',
propertyType: 'position',
keyframes: undefined,
timeOffset: -24
}
Trace
at Object.createAnimatedProperty (/Users/callie_riggins/projects/bodymovin-to-smil/src/property.js:36:11)
at createTransformGroup (/Users/callie_riggins/projects/bodymovin-to-smil/src/helpers/transform/createTransformGroup.js:79:33)
at Object.exportNode (/Users/callie_riggins/projects/bodymovin-to-smil/src/layers/layer.js:56:25)
at Object.createNodeInstance (/Users/callie_riggins/projects/bodymovin-to-smil/src/layers/composition.js:36:39)
at Object.exportNode (/Users/callie_riggins/projects/bodymovin-to-smil/src/layers/layer.js:44:9)
at Object.createNodeInstance (/Users/callie_riggins/projects/bodymovin-to-smil/src/layers/composition.js:36:39)
at Object.exportNode (/Users/callie_riggins/projects/bodymovin-to-smil/src/layers/layer.js:44:9)
at Object.createNodeInstance (/Users/callie_riggins/projects/bodymovin-to-smil/src/layers/composition.js:36:39)
at Object.exportNode (/Users/callie_riggins/projects/bodymovin-to-smil/src/layers/layer.js:44:9)
at /Users/callie_riggins/projects/bodymovin-to-smil/src/svg/svg.js:87:41
Error with group: _R_G_L_0_G_L_1_G
{
layers: [
{
setDrawables: [Function: setDrawables],
setTransforms: [Function: setTransforms],
setTrimPath: [Function: setTrimPath],
processData: [Function: processData],
createNodeInstance: [Function: createNodeInstance],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
{
createNodeInstance: [Function: createNodeInstance],
processData: [Function: processData],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
{
setDrawables: [Function: setDrawables],
setTransforms: [Function: setTransforms],
setTrimPath: [Function: setTrimPath],
processData: [Function: processData],
createNodeInstance: [Function: createNodeInstance],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
{
setDrawables: [Function: setDrawables],
setTransforms: [Function: setTransforms],
setTrimPath: [Function: setTrimPath],
processData: [Function: processData],
createNodeInstance: [Function: createNodeInstance],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
{
setDrawables: [Function: setDrawables],
setTransforms: [Function: setTransforms],
setTrimPath: [Function: setTrimPath],
processData: [Function: processData],
createNodeInstance: [Function: createNodeInstance],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
{
setDrawables: [Function: setDrawables],
setTransforms: [Function: setTransforms],
setTrimPath: [Function: setTrimPath],
processData: [Function: processData],
createNodeInstance: [Function: createNodeInstance],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
{
setDrawables: [Function: setDrawables],
setTransforms: [Function: setTransforms],
setTrimPath: [Function: setTrimPath],
processData: [Function: processData],
createNodeInstance: [Function: createNodeInstance],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
{
setDrawables: [Function: setDrawables],
setTransforms: [Function: setTransforms],
setTrimPath: [Function: setTrimPath],
processData: [Function: processData],
createNodeInstance: [Function: createNodeInstance],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
{
setDrawables: [Function: setDrawables],
setTransforms: [Function: setTransforms],
setTrimPath: [Function: setTrimPath],
processData: [Function: processData],
createNodeInstance: [Function: createNodeInstance],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
{
setDrawables: [Function: setDrawables],
setTransforms: [Function: setTransforms],
setTrimPath: [Function: setTrimPath],
processData: [Function: processData],
createNodeInstance: [Function: createNodeInstance],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
{
setDrawables: [Function: setDrawables],
setTransforms: [Function: setTransforms],
setTrimPath: [Function: setTrimPath],
processData: [Function: processData],
createNodeInstance: [Function: createNodeInstance],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
{
setDrawables: [Function: setDrawables],
setTransforms: [Function: setTransforms],
setTrimPath: [Function: setTrimPath],
processData: [Function: processData],
createNodeInstance: [Function: createNodeInstance],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
{
setDrawables: [Function: setDrawables],
setTransforms: [Function: setTransforms],
setTrimPath: [Function: setTrimPath],
processData: [Function: processData],
createNodeInstance: [Function: createNodeInstance],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
{
setDrawables: [Function: setDrawables],
setTransforms: [Function: setTransforms],
setTrimPath: [Function: setTrimPath],
processData: [Function: processData],
createNodeInstance: [Function: createNodeInstance],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
{
setDrawables: [Function: setDrawables],
setTransforms: [Function: setTransforms],
setTrimPath: [Function: setTrimPath],
processData: [Function: processData],
createNodeInstance: [Function: createNodeInstance],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
{
setDrawables: [Function: setDrawables],
setTransforms: [Function: setTransforms],
setTrimPath: [Function: setTrimPath],
processData: [Function: processData],
createNodeInstance: [Function: createNodeInstance],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
}
],
layer: {
createNodeInstance: [Function: createNodeInstance],
processData: [Function: processData],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
grouper: { g: { _attr: [Object] } }
}
{
targetName: '_R_G_L_0_G_L_0_G',
propertyType: 'position',
keyframes: undefined,
timeOffset: -24
}
Trace
at Object.createAnimatedProperty (/Users/callie_riggins/projects/bodymovin-to-smil/src/property.js:36:11)
at createTransformGroup (/Users/callie_riggins/projects/bodymovin-to-smil/src/helpers/transform/createTransformGroup.js:79:33)
at Object.exportNode (/Users/callie_riggins/projects/bodymovin-to-smil/src/layers/layer.js:56:25)
at Object.createNodeInstance (/Users/callie_riggins/projects/bodymovin-to-smil/src/layers/composition.js:36:39)
at Object.exportNode (/Users/callie_riggins/projects/bodymovin-to-smil/src/layers/layer.js:44:9)
at Object.createNodeInstance (/Users/callie_riggins/projects/bodymovin-to-smil/src/layers/composition.js:36:39)
at Object.exportNode (/Users/callie_riggins/projects/bodymovin-to-smil/src/layers/layer.js:44:9)
at /Users/callie_riggins/projects/bodymovin-to-smil/src/svg/svg.js:87:41
at new Promise (<anonymous>)
at exportNode (/Users/callie_riggins/projects/bodymovin-to-smil/src/svg/svg.js:81:17)
Error with group: _R_G_L_0_G
{
layers: [
{
setDrawables: [Function: setDrawables],
setTransforms: [Function: setTransforms],
setTrimPath: [Function: setTrimPath],
processData: [Function: processData],
createNodeInstance: [Function: createNodeInstance],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
{
createNodeInstance: [Function: createNodeInstance],
processData: [Function: processData],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
}
],
layer: {
setDrawables: [Function: setDrawables],
setTransforms: [Function: setTransforms],
setTrimPath: [Function: setTrimPath],
processData: [Function: processData],
createNodeInstance: [Function: createNodeInstance],
setTimeOffset: [Function: setTimeOffset],
setWorkAreaOffset: [Function: setWorkAreaOffset],
exportNode: [Function: exportNode],
getMasks: [Function: getMasks],
transform: [Function: transform],
buildParenting: [Function: buildParenting],
setSiblings: [Function: setSiblings]
},
grouper: { g: [ [Object], [Object] ] }
} |
@calinoracation hi, would you mind sharing the .aep of the "second source.json" file? |
@bodymovin Here's the aep for it. |
@bodymovin just checking in if you had an update on this issue? |
@trevcodesjs @calinoracation I fixed several issues from your project and many animations are working now. |
We use npm primarily. We're looking forward to giving this a shot, thanks so much for the fixes! |
When I tried with a new json file from AE I get the following error.
here is the json file used. animation.zip
The text was updated successfully, but these errors were encountered: