what i want to do: i stop a fbx animation after i hit a button but i want the animation to run till the end of the fbx animation cycle before it stops. this i do with a timer and the exit segment at end cycle. so far, no problem.
BUT:
i use the playmode “specify index” in my FBX comp to control the timeline of the fbx animation and it’s stuttering. is specify index the right way to go? indexing feels not right
does anyone knows, how i control the fbx animation so that the animation will be played fluently?
is there another way to control the timeline of the fbx animation?
thanks for answering!
it’s not a performance issue. when i switch the play mode to “sequential” or “lock to timeline”, everything works great. i guess “specify index” is not the right way to go because it doen’s play the animation fluently.
in former versions of td (before the FBX Comp ) there was a File In chop when i´you imported a FBX there the take (the animation) was loaded. you played the animation with adding a Time Slice chop locking it to the timeline. you see it here: UV Mapping and Importing Animations to TouchDesigner - YouTube
i want to control the playhead exactly like he is doing in the video by adding a Look Up chop and a Constant chop. but i don’t have any access to the take anymore with the new FBX Comp, do i?!
Can you post an example file? Might be a frame rate matching issue. How you index the lookup is somewhat arbitrary but you want to be sure each frame in the animation is playing for each frame in TouchDesigner.
Here I have prepared a project file. if you press the button, the play mode switches between sequential and specific index. you can see the stuttering very well, especially if you slow down the animation. I assume that specific indexing is not the right way to go. I would rather control the TAKE of the fbx myself as it used to be possible in former versions of td (as described in the video above).
The animation is 24fps but the timeline is 60fps. I think you’d get better results by reimporting with a custom rate equal to the timeline fps. This will upsample the animation coming in through the Import Select CHOP.
The Timer CHOP has a fixed length of 1 second and it’s running at 0.1 speed so it’s running for a total of 10 seconds while the animation is only 5.6 seconds long.
To import the full animation range into the Import Select CHOP: on the FBX Play page select “Output Full Range” Play Mode and re-import.
Using the output full range mode you can see the animation has 135 samples and was output at 24 fps. Therefore it’s 5.63 seconds long. If you want to play this back with an index using a TimerCHOP, set your TimerCHOP length to use Seconds, and output Timer Count on Outputs page to use Seconds. Make the timer 5.63 seconds long. Then set the PlayMode of the FBX component to be Specify Index and drive the Index parameter using Seconds. Export the seconds channel to the index channel and you will have the animation playing at the correct rate independent of your main timeline rate.
That’s definitely a solution to play the animation correct with specific indexing.
I ended with that solution:
As Eric said, set the play mode to full range. Inside the FBX comp i manipulate the time by using a lookup chop and a timer (like in the video above).