We are in the process of updating this documentation for OpenSim 4.0. Are you looking for OpenSim 3.3 documentation?

The OpenSim Desktop Application

The OpenSim 4.0 Graphical User Interface (GUI) operates in a very similar manner to the OpenSim 3.0 GUI with a few differences to note:

  • The visualizer is new. In the top right of the visualizer window you will find controls to change the location of a light source for shadows, floor texture, background colors etc.

  • Navigating in the view uses different mouse controls

  • Selection of model geometry and muscle path points is now indicated by a yellow bounding box. 

  • A new color scheme is the default for muscles

  • Screen capture outputs high-resolution PNG files. Movie capture outputs webm format, for all platforms (including 64bit).

Upgrading your model files

  • The XML format of model files has changed due to underlying improvements in the API. Editing osim files by hand in a text editor may be more challenging, but we provide several scripts to edit files (see the file Code/GUI/modelBuildingUtilities.py in the Resources directory) and you can also utilize the GUI’s Property Editor Property Editor and Outputs List.

  • OpenSim 4.0 version model files are not compatible with 3.3 or earlier versions. Do not save a 3.3 version model in 4.0 if you want to be able to also use it in 3.3. OpenSim models from versions 2.4 to 3.3 should open without issue in 4.0 (with the potential changes noted below).

  • Components (i.e., muscles, markers, joints, etc.) in a model must all have unique names. OpenSim 4.0 will automatically rename components upon loading a 3.3 or earlier version file with duplicate names. Or edit the model file before opening to resolve duplicates with your own naming scheme.

  • If you are using models with CustomJoints that have coupled motion, you may need to redefine your joint definitions. In OpenSim 4.0, we eliminated the potential for MotionType inconsistencies by using the Joint type to determine the MotionTypes of its coordinates. For a CustomJoint, a coordinate is considered Rotational (or Translational) if and only if it is a pure rotation (or translation) along one of the corresponding six spatial transform axes, which means the relationship is 1 to 1 (e.g., linear function of slope +/-1). If the transform axis motion is any other function it is interpreted as Coupled where the motion about that axis is coupled to the generalized coordinate and it is not a physical measure of spatial motion (not an angle or displacement in Cartesian axes) of the joint's child frame. 

  • Additional details and changes are listed in the full log of changes to the API

Running OpenSim tools from the command line

We created a new unified command line interface that will replace the single-tool command line executables (scale, ik, id, rra, cmc, etc.). For example, to run scale, the call is now:

scale -S setup.xml -> opensim run-tool setup.xml.

 Read more.

Upgrading your scripts and C++ code