Description
In ModelVisualizer::createVisualizer()
, a search path is created including paths in the PATH environment variable by default. When the SimTK::Visualizer
is allocated, it will find the SimbodyVisualizer executable in the OpenSim install highest in the search path. If working with 4.0 in C++, but you have an 3.3 install higher in the path (for example, to run simulations with an older research pipeline, as I do) it will find the SimbodyVisualizer executable in the 3.3 and throw an error since it is incompatible with the visualizer protocol used in 4.0:
After discussing with @chrisdembia, one possible fix would be to look for the OpenSim_buildinfo.txt
file in each path added to the SimTK::Visualizer
search path and verify that it is the correct version of OpenSim and exclude it if otherwise.