この文書では、MacOS(15.7.1)上で物理シミュレーションツールSOFAを活用する方法を紹介します。
「SOFA: Simulation Opensource Framework Application」は、INRIA(フランスの国立情報学自動制御研究所)が開発したリアルタイム物理シミュレーションの研究・開発のためのオープンソースフレームワークです。
https://www.sofa-framework.org/
SOFAとはなにか
ChatGPTで、AIの回答を見ると以下の通りです
SOFA(Simulation Open Framework Architecture)は、リアルタイムの物理シミュレーションを目的として開発されたオープンソースのシミュレーションフレームワークです。特に医療シミュレーション、ロボット工学、バーチャルリアリティ(VR)などの分野で広く利用されています。
このフレームワークは、フランスの「国立情報学自動制御研究所(INRIA)」によって開発され、教育・研究機関をはじめ、産業界でも活用されています。
主な特徴
- 高いモジュール性
各種物理エンジンやアルゴリズムをモジュールとして組み合わせ、柔軟なシミュレーション構築が可能です。 - リアルタイムシミュレーション対応
医療トレーニングなどで求められるリアルタイム性に優れており、インタラクティブな操作が可能です。 - 複数の物理モデルに対応
剛体、柔軟体、布、流体など多様な物理モデルを統合した複雑なシミュレーションが可能です。 - 柔軟なシーン定義
XML や Python スクリプトを使って、シミュレーション環境を簡単に構築できます。 - オープンソース(LGPL ライセンス)
無償で利用・改変でき、学術研究や商用プロジェクトにも活用可能です。
利用環境の注意
オープンソースで公開され、ビルドすることが基本ですが、手軽に利用するためには、バイナリパッケージが便利です。以下のダウンロードページには、「Linux/Windows/MacOS」の3つの環境用に、ダウンロードが可能です。
https://www.sofa-framework.org/download/
ここでは、MacOSのSequoia(15.7.1)での利用を想定します。実は最初に、上記のページから最新版(v25.06.00)をダウンロードしたのですが、なぜか?正しく動作しませんでした。
そこで、githubから1つ前の、v24.12.00をダウンロードしました。
https://github.com/sofa-framework/sofa/releases
上記のページの「v24.12.00」において、Assetsをクリックして項目を表示して、「SOFA_v24.12.00_MacOS.zip(277MB)」をダウンロードします。
インストール方法
・MacOSのFinderでダウンロードフォルダを見ると、「SOFA_v24.12.00_MacOS.zip」があります。これをダブルクリックして展開します。
・できたフォルダ「SOFA_v24.12.00_MacOS」を、左側の一覧「アプリケーション」に移動します。
・MacOSは、ある意味でUnix系のOSなので、ターミナルを開いて、コマンド操作で利用します。
・このままでは、MacOSにとって、実行して良いアプリケーションと認識されないので、以下のコマンドを実行します。
% xattr -dr com.apple.quarantine /Applications/SOFA_v24.12.00_MacOS
xattr: No such file: /Applications/SOFA_v24.12.00_MacOS/lib/libzstd.1.dylib
xattr: No such file: /Applications/SOFA_v24.12.00_MacOS/lib/libjpeg.8.dylib
なぜか?2行分の嫌なメッセージが出ますが、ここでは気にせずに進みます。
動作確認の方法
ターミナル上で、以下のように、コマンドを実行します。
% cd /Applications
% cd SOFA_v24.12.00_MacOS
% ls
Authors.txt collections git-info.txt LICENSE-LGPL.md screenshots
bin config include plugins share
CHANGELOG.md etc lib README.md
% cd bin
% ls
iconengines runSofa runSofaGLFW-24.12.00
imageformats runSofa-24.12.00 styles
platforms runSofaGLFW
% ./runSofa
これでSOFAのGUIツールが起動し、ヘビの巻きついたオブジェが表示されたら、起動成功です。
デモ用スクリプトファイルは、「/Applications/SOFA_v24.12.00_MacOS/share/sofa/examples/Demos」の中にあるので、File → Open Simulation で選択して開きます。
今後は、SOFAの活用方法を検証して、紹介したいと思います。