Async Simulation and Visualization + Data-Export system

Idea: Run the simulations in another thread.

Advantages:

  • Some performance improvement since one thread can run the simulation full speed, the other render the visualization.
  • (Re-)develop the simulation data exporting. The relevant simulation data-points are saved per frame (can be a different rate then the simulation rate). The simulation "client" would register which data-points should be exported (to save bandwidth).
  • The basic-sim can store the frames for a simulation. This allows to watch a simulation as it is simulated, but also to watch back/navigate the simulation using a timeline.
  • This simplifies the time control logic between visualization and simulation.
  • The data-export system can also directly be used to save simulation results.
  • The data-export system could also be used to watch simulations remotely (would update the visualization project)
  • A solid data-export system would make exporting any data (also inspection data for plotting, ...) cleaner and more generic.
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information