Morphing Animation in a glTF#
In this tutorial, we will show how to use morphing in a glTF model in FURY.
from fury import window from fury.data import fetch_gltf, read_viz_gltf from fury.gltf import glTF
Retrieving the model with morphing in it (look at Khronoos samples). We’re choosing the MorphStressTest model here.
fetch_gltf('MorphStressTest', 'glTF') filename = read_viz_gltf('MorphStressTest')
Initializing the glTF object, You can additionally set apply_normals=True. Note: Normals might not work as intended with morphing.
Get the morph timeline using morph_timeline method, Choose the animation name you want to visualize. Note: If there’s no name for animation, It’s stored as anim_0, anim_1 etc
animation = gltf_obj.morph_animation()['TheWave']
Call the update_morph method once, This moves initialise the morphing at timestamp 0.0 seconds and ensures that camera fits all the actors perfectly.
Create a scene, and show manager. Initialize the show manager and add timeline to the scene (No need to add actors to the scene separately).
define a timer_callback. Use the update_morph method again, It updates the timeline and applies morphing).
Optional: timeline.play() auto plays the animations.
Total running time of the script: ( 0 minutes 0.156 seconds)