Box2Dの導入(VS2013とXcode7.1.1の例)

以前、2D物理演算ライブラリ”Box2D”を自分の環境に導入した時の個人的なメモです。
Visual Studio 2013 と Xcode 7.1.1 の両方でやったので、それぞれでの手順を簡単に。

・Box2Dの入手

上記ページから「Box2D_v2.3.0.7z」をダウンロード。
解凍して得られた <Box2D_v2.3.0> を適当なフォルダに移動。

・Visual Studio 2013 の場合

 

① CMakeでビルド
<Box2D_v2.3.0/Box2D> に <Build> フォルダがあることを確認。
中身は <vs2012> と <xcode5> と <Readme.txt> のはず。
今回はvs2013で用いるので、ここに <vs2013> のフォルダを作成。
CMake(cmake-gui.exe)を起動。
「Where is the source code:」に <Box2D_v2.3.0/Box2D> を指定。
「Where to build the binaries:」に <Box2D_v2.3.0/Box2D/Build/vs2013> を指定。
「Configure」ボタンをクリック。
ここで「Visual Studio 2013」を選択すること。
自分の使用環境とは違うバージョンで生成するとライブラリを生成した後に泣きをみることになる。
Configure done. と出たら、最後に「Generate」をクリック。
<vs2013> の中にいろいろ生成されていることを確認したら次へ。

 

② バッチビルドを行ってライブラリファイルを生成
<vs2013> の中に生成されたソリューションファイルBox2D.slnを開く。
適当なプロジェクト(Testbedがおすすめ)を右クリックでスタートアッププロジェクトに設定して、
ビルド。実行。ちゃんと動くことを確認。
満足したら、ビルドメニューの「バッチビルド」をクリック。
「すべて選択」を選んだ後に「ビルド」をクリック。
すべて処理が終了したらソリューションを閉じる。
このバッチビルドにより、ライブラリファイルが生成されたので、
自分のプロジェクトにBox2Dを組み込むことができるようになる。

 

③ 自分のプロジェクトに導入してみる
Visual Studio 2013 を起動。
Win32コンソールアプリケーションで適当に空のプロジェクトを新規作成。
プロジェクトのプロパティで、
「追加のインクルードディレクトリ」に <Box2D_v2.3.0/Box2D> を設定。
「リンカー」の「入力」のタブの「追加のライブラリファイル」に
<Box2D_v2.3.0/Box2D/Build/vs2013/Box2D/Release/Box2D.lib> を設定。
(vs2013でDebugモードを選択している場合はDebugの方を入力すること)
あとはソースコードで <Box2D/Box2D.h> をインクルードすれば良い。

・Xcode 7.1.1 の場合

 

① Xcodeプロジェクトを作成
Xcode を起動。
新規プロジェクト -> OS X -> Application -> Command Line Tool で次へ。
適切な Product Name を入力し、Language を C++ に設定して次へ。
Source Control のチェックはとりあえず空欄で、
Add to は “Don’t add to any project or workspace” に設定。
どちらもたぶんデフォルトでそうなってるはず。そして “Create” で作成。

 

② XcodeプロジェクトにBox2Dを導入
Finderから <Box2D_v2.3.0/Box2D/Box2D> のフォルダを
Xcodeヒエラルキービューのプロジェクト直下にドラッグ&ドロップ。
なんかダイアログが出るはず。(ここが重要)
“Copy items if needed” と “Create groups” と “Add to targets” のところにチェックを入れる。
ここで、必ず “Create groups” にチェックを入れること。
“Create folder references” にチェックを入れるとうまくいかない。
そして、ヒエラルキービューでプロジェクトを選択し、
Build Settings -> Search Paths -> Header Search Paths に $(PROJECT_DIR)/** と入力。
あとはソースコードで <Box2D/Box2D.h> をインクルードすれば良い。

参考にさせていただいたサイト

・所感
メモをべたっとやっただけなので文字ばかりになってしまいました。そして、ところどころ自分の記述に不安があります。バッチビルドでライブラリファイルが云々のところも自分でよくわかってないところ。不審な点があればご指摘頂けると幸いです。

冬アニメが終わり、季節の移り変わりを感じる今日この頃でした。

コメントを残す