Load Motion -> Play Animation fails to animate past a particular frame
Posted: Thu Feb 27, 2020 9:47 am
Hi everyone,
I have run into an issue with Opensim 4.x (both 4.0 and 4.1) when attempting to load a motion and replay it. I've tested this in Mac Yosemite.
Essentially, I have run inverse kinematics through command line tools and as far as I can tell the procedure has completed without any problems. When I load the kinematics into the player, no errors or exceptions are risen. However, when actually playing the kinematics, they halt at a particular frame, with the rest of the animation failing to proceed (but with no exceptions arising in the Messages window). Removing frames from the end of the .mot file to shorten the duration of the recording fails to have an effect. Removing frames prior to the point where the replay "freezes" results in the recording still freezing at the precise frame it did before (albeit reaching that frame more quickly now that fewer frames between the start of the recording and the "freeze" point now exist). If all frames from the start of the recording up to the "freeze" point are eliminated from the .mot file, no animation is played (although, again, no errors are shown in the Messages window). However, the "freeze" frame has no obvious problems: the kinematics are within a reasonable range of values, and there are no formatting differences between this frame and the rest of the file.
A culprit could very well be the version of the model being used to replay the kinematics. The original model file was created in Opensim 2.x, indicated by the <OpenSimDocument Version="20302"> field in the .osim file. Indeed, when I use Wine to load the model and kinematics file into an older version (Opensim 3.3), kinematic replay proceeds flawlessly. Also indicative of potential problems between old models and new software is that, upon loading the .osim file, a long string of warnings following this format are given:
"GeometryPath 'geometrypath' has subcomponents with duplicate name 'pathwrap'.
The duplicate is being renamed to 'pathwrap_0'."
However, when simply re-saving the model in a version 4.x .osim file, even though the above warnings disappear when loading the model, the same issues arise when replaying the kinematics. For this reason, I think the problem resides deeper than mere .osim formatting requirements across different versions. It could still be a model issue (the model we use is based on https://simtk.org/projects/ulb_project, for reference) and an indicator that an update is in order. But perhaps there is a known change in Opensim 4.x that could help me understand what is happening?
I have run into an issue with Opensim 4.x (both 4.0 and 4.1) when attempting to load a motion and replay it. I've tested this in Mac Yosemite.
Essentially, I have run inverse kinematics through command line tools and as far as I can tell the procedure has completed without any problems. When I load the kinematics into the player, no errors or exceptions are risen. However, when actually playing the kinematics, they halt at a particular frame, with the rest of the animation failing to proceed (but with no exceptions arising in the Messages window). Removing frames from the end of the .mot file to shorten the duration of the recording fails to have an effect. Removing frames prior to the point where the replay "freezes" results in the recording still freezing at the precise frame it did before (albeit reaching that frame more quickly now that fewer frames between the start of the recording and the "freeze" point now exist). If all frames from the start of the recording up to the "freeze" point are eliminated from the .mot file, no animation is played (although, again, no errors are shown in the Messages window). However, the "freeze" frame has no obvious problems: the kinematics are within a reasonable range of values, and there are no formatting differences between this frame and the rest of the file.
A culprit could very well be the version of the model being used to replay the kinematics. The original model file was created in Opensim 2.x, indicated by the <OpenSimDocument Version="20302"> field in the .osim file. Indeed, when I use Wine to load the model and kinematics file into an older version (Opensim 3.3), kinematic replay proceeds flawlessly. Also indicative of potential problems between old models and new software is that, upon loading the .osim file, a long string of warnings following this format are given:
"GeometryPath 'geometrypath' has subcomponents with duplicate name 'pathwrap'.
The duplicate is being renamed to 'pathwrap_0'."
However, when simply re-saving the model in a version 4.x .osim file, even though the above warnings disappear when loading the model, the same issues arise when replaying the kinematics. For this reason, I think the problem resides deeper than mere .osim formatting requirements across different versions. It could still be a model issue (the model we use is based on https://simtk.org/projects/ulb_project, for reference) and an indicator that an update is in order. But perhaps there is a known change in Opensim 4.x that could help me understand what is happening?