How to export/import 'global timeline' Blender via GLTF as 'total animation' in ThreeJs?


Right now I’m learning more about the Animation system of ThreeJs so went through all options and created some animations in Blender and made them work in ThreeJs.

When moving the playhead in the Blender dopesheet all actions are animated in sync. But all these actions are exported seperately by the GLTF exporter, instead of a ‘global timeline’.

That’s nice when just wanting to animate a single object, but how about creating a full animation where different objects animate and need to be in sync all the time?

I found action.syncWith() in threejs and it’s working fine, but when having lots of actions, making up a single ‘total animation’, needing ‘convert’ all imported animationClips to actions first on a mixer and than play them all and sync them all up seems like a huge workaround/overkill to me.

Is it really meant to work this way? Do we really have to play all seperate clips as actions? Or is there some better way to either export the full animation as a single AnimationClip in Blender, or use the seperated actions like a single ‘total animationClip’?

try disabling

Group by nla track

while exporting gltf (also check out other export options there ,might come in handy)

1 Like

Wow, I feel so stupid; I walked through all settings of the exporter and documentend them for myself, but overlooked the arrow before the Animation checkbox to open it for detail settings. I’ll try it out.

[edit] that did the trick! Thanks!