SofaAPAPI-Unity3D [V21.12.00] // [v21.06.01]

Release date: 2022-05-23

Both releases have the same enhancements and fixes but they are based on different version of SOFA physics engine:

– SofaAPAPI-Unity3D version v21.12.00 is based on SOFA release v21.12.00
– SofaAPAPI-Unity3D version v21.06.00 is based on SOFA Release v21.06.03



  • Core enhancements:
    • Improve: SOFA Data communication from Unity using Data counter and flags.
    • Add: SOFA Data vector support for int, float, double Vec2 and Vev3
    • Add: Hexahedral and Quad mesh handling
    • Improve: TopologyElement classes to store the topology structure as arrays of indices.
    • Add: Demo scene and scripts for liver cutting simulation.
    • Add: Demo scene and shader for burning simulation.
  • Plugins Enhancements:
  • Major bug fix:
    • Fix: SofaPython3 loading scenes.
    • Fix: Avoid creation of empty GameObject for non supported SOFA component.
    • Fix: Problem of multiple root node when deleting reloading SOFA scene.
    • Fix: Serialisation of DataArchiver with new DataArray and add backward compatibility
  • Other bug Fix:
    • Fix: VisualModel topology change handling when mesh increase.
    • Fix: Plugin Manager to handle new plugin architecture from SOFA master.
    • Fix: Bug of Material creation HDRP vs normal pipeline.
    • Fix: DataVector set Values method. Size was not properly set.
    • Fix: Graph parsing to handle Sofa Ode solver and Sofa Linear solver

Know bugs


  • Hack: Unactive svaing of Data for the moment

  • [SoftRobots] asset has been disabled.
  • [Multi-threading] asset has been disabled.
  • ParticlesModel max number of particles can’t be increased during simulation.
  • SofaVR_API and VR SofaPlayer curved interfaced have been disabled.
  • Mesh interaction in Unity3D is only working on triangulation.
  • It is not possible to create components directly in Unity3D hierarchy interface and then change its type.
    Only a few set of components are handled. See graph edition
  • It is only possible to set Data value, not to link them between components inside Unity3D.
  • Building Unity App will copy all SofaUnity scenes and resources. Not only the targeted one.