Bullet 2.76 Physics SDK マニュアル
3. クイックスタート
ダウンロード
Windowsで開発する場合は、http://bullet.googlecode.comからzip圧縮されたソースをダウンロードしてください。Mac OSX、Linuxなどその他プラットフォームで開発する場合は、gzip圧縮されたものをダウンロードしてください。
ビルド
Bullet はすべてのプラットフォームで手軽にコンパイルできるよう心がけて作成されています。
CMakeは、Microsoft Visual Studio、Mac OSXのXCode、LinuxやUnixのMakefile用KDevelopなど、様々なビルド環境、プラットフォームをサポートします。
CMakeをhttp://cmake.orgからダウンロード/インストールし、CMake cmake-guiツールを使ってビルドしてください。詳細は付録(日本語化対象外)をご覧ください。
コマンドラインからでもCMakeを利用することができます。ビルドシステム一覧を見るためには、CMakeを引数なしで起動してください。
例えば、Mac OSX XCodeプロジェクトファイルを生成するためには、以下のコマンドを実行します。
cmake . -G Xcode
Linux/Unix Makefileを生成するには、以下のコマンドを実行します。
cmake . -G "Unix Makefiles"
Microsoft Visual Studio 8 2005を使う場合は、以下のコマンドを実行します。
cmake . -G "Visual Studio 8 2005"
CMakeで生成した Windows Visual Studio 2005 のプロジェクトファイルは、下記の場所にも置いてあります。
Bullet/msvc/8/BULLET_PHYSICS.sln
CMakeが推奨されていますが、autoconf/automake でもMakefileを生成することが可能です。
./autogen.sh
./configure
make.
テスト用デモ
Bulletデモは Bullet/Demos フォルダにありますので、試してみてください。
アプリケーションへのBullet physicsの統合
btDiscreteDynamicWorld, btCollisionShape, btMotionState, btRigidBody の生成方法については、CcdPhysicsDemoを見てみてください。ワールドで毎フレームごとに stepSimulationメソッドを呼び、グラフィックオブジェクトと同期させています。
これを実行するには、以下の項目が必要です。
- #include "btBulletDynamicsCommon.h" をソースファイルに記述します。
- Bullet/srcフォルダをインクルードパスに含めます。
- BulletDynamics, BulletCollision, LinerMathライブラリを追加します。
実際のライブラリ名は環境により異なります。例えば、Visual Studioコンパイラは.lib拡張子、Unixではlib前置詞と.a拡張子が使われます。CMakeを使っている場合は、通常ビルドディレクトリのlibフォルダに置かれます。
衝突判定ライブラリのみを統合する
Bulletの衝突判定は Dynamics/Extrasなしでも使用可能です。ローレベルデモのCollision Interfaceデモ、特に btCollisionWorldクラスを見てみてください。
これを実行するには、以下を実施してください。
- #include "btBulletCollisionCommon.h" をソースファイルに記述します。
- Bullet/srcフォルダをインクルードパスに含めます。
- BulletCollision, LinerMathライブラリを追加します。
GJK最近傍点演算のような一部のみを利用する
Bulletはモジュール化することにより依存関係をできるだけ疎にするよう設計されています。
Demos/ConvexHullDistance デモは直接 btGjkPairDetectorを使っています。