オプション機能

ここでは、Choreonoidのビルド設定において選択可能なオプション機能を紹介します。

オプション機能はCMakeの設定で有効化/無効化します。この操作については、 ソースコードからのビルドとインストール (Ubuntu Linux編)CMake によるビルド設定 もしくは ソースコードからのビルドとインストール (Windows編)CMakeによるビルド設定 を参照してください。

主要なオプション

  • ENABLE_GUI
ChoreonoidのGUI上で実現される機能を有効にします。デフォルトでONになっていて、Choreonoidをアプリケーションソフトとして使用する場合は必須のオプションです。GUIには依存しないライブラリの部分だけを利用したい場合は、これをOFFにすることでビルド時間を短縮することができます。
  • BUILD_ASSIMP_PLUGIN
Assimpプラグインをビルドします。Assimpは各種3Dモデルファイルを読み込むためのライブラリで、このプラグインによりCOLLADA、Blender、X、DXF形式のファイルを読み込むことが可能となります。Windowsでこれをビルドする場合は オプション機能のビルド をご参照ください。UbuntuではデフォルトでONになっています。
  • BUILD_POSE_SEQ_PLUGIN
PoseSeqプラグインをビルドします。このプラグインはキーポーズによる振り付け機能を提供シアmス。デフォルトでONとなっています。
  • BUILD_BALANCER_PLUGIN
バランサープラグインをビルドします。このプラグインにより、振り付け機能において自動バランス補正を行うことが可能となります。二足歩行ロボットの振り付けを行う際にこの機能を使うことで(理論上)転倒しない動作を作成できます。デフォルトでONになっています。
  • ENABLE_PYTHON

ChoreonoidのPythonバインディグを有効にします。PythonバインディングによりC++で実装されているコレオノイドのライブラリをPythonで利用することが可能となります。例えばBodyライブラリのPythonバインディングである "cnoid.Body" モジュールをインポートすることで、Python上でBodyクラスを中心とした各種ロボティクス関連処理を記述することができます。

また、ENABLE_GUIがONの場合、ChoreonoidのGUI上でPythonを利用するためのPythonプラグインとPythonSimScriptプラグインもあわせてビルドされます。

Windowsでこれを有効にする場合は オプション機能のビルド をご参照ください。UbuntuではデフォルトでONになっています。

  • BUILD_ODE_PLUGIN
ODEプラグインをビルドします。このプラグインにより、オープンソースの動力学計算ライブラリである "Open Dynamics Engine (ODE)" を、シミュレーションのための物理エンジンとして利用できるようになります。利用の際には、 Open Dynamics Engine (ODE) をインストールしておく必要があります。UbuntuのパッケージインストールスクリプトではODEもインストールされますので、このオプションをONにするだけでビルドできます。Windowsでのビルドについては オプション機能のビルド をご参照ください。なお、ODEプラグインがなくても、組み込みのAIST物理エンジンを用いたシミュレーションが可能です。
  • BUILD_AGX_DYAMICS_PLUGIN
AGX Dynamicsプラグインをビルドします。AGX DynamicsはスウェーデンのAlgoryx社が開発した商用の物理エンジンで、これを用いたシミュレーションを利用できるようにします。詳細は AGX Dynamicsプラグイン を参照ください。
  • BUILD_MULTICOPTER_PLUGIN
マルチコプタプラグインをビルドします。このプラグインによりマルチコプタのシミュレーションが可能となります。詳細は マルチコプタプラグイン を参照ください。
  • BUILD_SCENE_EFFECTS_PLUGIN
シーンエフェクトプラグインをビルドします。このプラグインにより、シーン上に炎や煙等のエフェクトを描画できるようになります。
  • BUILD_MEDIA_PLUGIN
メディアプラグインをビルドします。このプラグインによりChoreonoid上で動画や音声の各種メディアファイルを再生することが可能となります。
  • BUILD_TRAFFIC_CONTROL_PLUGIN
TrafficControlプラグインをビルドします。このプラグインにより、通信遅延、帯域制限、パケットロス等の各種通信障害を模擬することが可能となります。詳細は TrafficControlプラグイン を参照ください。
  • BUILD_FCL_PLUGIN
FCLプラグインをビルドします。このプラグインにより、オープンソースの干渉検出ライブラリである  Flexible Collision Library (FCL) を干渉検出に利用することが可能となります。UbuntuのパッケージインストールスクリプトではFCLもインストールされますので、このオプションをONにするだけでビルドできます。Windowsでは自前でFCLをインストールしておく必要があります。なお、FCLプラグインがなくても、組み込みの干渉検出機能が利用できますので、特に問題はありません。

サンプル関連オプション

以下はサンプルのデータやプログラムをビルドするためのオプションです。

  • ENABLE_SAMPLES
サンプルを有効化します。これにより、基本的なサンプルのビルドに加えて、以下のオプションで追加のサンプルもビルドできるようになります。
  • BUILD_SIMPLE_CONTROLLER_SAMPLES
シンプルコントローラで実現される各種シミュレーションサンプルをビルドします。
  • BUILD_SUBMERSIBLE_SAMPLE
水中型ロボットの簡易シミュレーションを行うサンプルです。
  • BUILD_WRS2018
2018年に開催された国際ロボット競技会 World Robot Summit 2018における「トンネル事故災害対応・復旧チャレンジ」の競技用モデルをサンプル化したものです。詳細は World Robot Summit 2018 を参照ください。
  • BUILD_GROBOT_PLUGIN
小型ホビーロボット "GRobot GR001" を利用するためのプラグインです。このロボットは現在販売されておりませんが、同様のロボットを接続して動かす際の参考にすることができますので、サンプルとして残しています。Choreonoidの旧バージョン用に作成された古いドキュメントになりますが、 振り付け機能チュートリアル にてこのプラグインの利用方法も説明しています。

拡張機能基盤オプション

以下は拡張機能の基盤となるオプションです。特に必要がない限り有効にする必要はありません。

  • BUILD_MANIPULATOR_PLUGIN
Choreonoid上でマニピュレータの教示・シミュレーション機能を実現するための基盤となるプラグインです。
  • ENABLE_CORBA

CORBA関連機能を有効にします。OpenRTMやOpenHRP関連の機能を利用するにあたって必要となります。 omniORB を用いて実装されています。Ubuntuであれば以下のコマンドで必要なomniORB関連パッケージをインストールできます。

sudo apt install libomniorb4-dev libcos4-dev omniidl omniorb-nameserver python-omniorb omniidl-python

なおこのオプションはメニュー形式のCMake設定ツールでは通常表示されません。Advanced Modeに切り替えることで表示されるようになります。

実験/開発段階機能のオプション

以下に紹介するのはまだ実験/開発段階にある機能のオプションで、必ずしも正常に動作するものではありません。これらは主に該当機能の開発のために利用するオプションとなっています。メニュー形式のCMake設定ツールでは通常これらのオプションは表示されず、Advanced Modeへの切替時のみ表示されるようになっています。(以下で紹介する各プラグインのビルド方法に関するページは内容が古くなっている部分もありますが、ご了承ください。)

  • BUILD_BULLET_PLUGIN
Bulletプラグインをビルドします。このプラグインにより、オープンソースの物理計算ライブラリである Bullet Physics をコレオノイドのシミュレーション機能で利用できるようになります。ビルド方法については、 Bulletプラグインのビルド を参照ください。
  • BUILD_PHYSX_PLUGIN
PhysXプラグインをビルドします。このプラグインにより、物理計算ライブラリ PhysX をコレオノイドのシミュレーション機能で利用できるようになります。ビルド方法については、 PhysXプラグインのビルド を参照ください。
  • BUILD_ROKI_PLUGIN
ROKIプラグインをビルドします。このプラグインにより、ロボット運動学ライブラリ RoKi をコレオノイドのシミュレーション機能で利用できるようになります。ビルド方法については、 RoKiプラグインのビルド をご覧ください。
  • BUILD_SPRINGHEAD_PLUGIN
Springheadプラグインをビルドします。このプラグインにより、動力学計算ライブラリ"Springhead"をコレオノイドのシミュレーション機能の計算エンジンとして利用できます。Springheadの詳細については Springheadホームページ を、ビルド方法については、 Springheadプラグインnのビルド をご覧ください。
  • BUILD_SDF_PLUGIN

SDFプラグインをビルドします。このプラグインにより、Simulation Description Format (SDFormat) で記述されたモデルを読み込むことが可能となります。実装には SDFormat library を用いています。Ubuntuでビルドする場合は、以下のコマンドで必要なライブラリをインストールできます。

sudo apt install libsdformat6-dev libogre-1.9-dev
  • ENABLE_LUA

プログラミング言語Lua によるバインディングやスクリプト実行機能を有効にします。Ubuntuでビルドする場合は、以下のコマンドでLua関連のパッケージをインストールしておきます。

sudo apt install lua5.3 iblua5.3-dev lua-posix

その他のオプション

Choreonoidでは上に挙げた以外にもオプションがありますが、それらについて何であるかが分からない場合は基本的にONにしないようにしてください。