SofaUnity Description Installation Features Available Examples Assets Available Release Notes Download


This diagram explain the communication pipeline between Unity and SOFA. As shown the coupling between the two frameworks rely on a plugin on each side which communicate together.

On one side, the plugin SofaAdvancePhysicsAPI offers a generic API to interact with the simulation loop and the different component of the SOFA framework.

On the other side, the SofaUnityAPI plugin is acting as an intermediary between the SofaAdvancePhysicsAPI plugin and the SofaUnity Asset.

Several type of GameObject are available in the SofaUnity Asset. They correspond to SOFA physics Object. Particularly, the GameObject “SofaContext” will create an instance of SOFA. This instance represent the simulation loop of SOFA and all GameObject child of this “SofaContext” will be simulated by SOFA in the same 3D scene.

SofaUnity Asset Content

  • Plugins
    • Native
    • SofaUnityAPI

# Sofa x64 .dll files folder.
# API scripts interfacing with Sofa library.
  • Resources
    • icons
    • Materials
    • Shaders
    • Textures

# Unity materials, textures and images.
  • Scenes
    • Benchmarks
    • Demos
    • SofaScenes
    • Surgery
    • VROffice

# Basic scenes of Sofa-Unity object creation.
# Demo scenes of the plugin.
# Sofa .scn files with their data.
# Demo scene of Sofa liver inside Unity scene.
# Demo scene of Sofa liver with interactions in VR, using VRTK.
  • Scripts
    • Components
    • Cutting
    • Editor
    • Tools
    • VRTools

# Script of the different SofaUnity GameObjects.
# Scripts linked to ray casting and cutting.
# Scripts of the UI of the GameObjects.
# Scripts of useful components/algorithms.
# Specialisation of the tools for VR.