パスワードを忘れた? アカウント作成
73425 journal

fslashtの日記: [Box2D] 2D物理エンジンを使ったみた (C#ソース付) 7

日記 by fslasht

 最近のゲームでは物理エンジンを搭載して物体の動きがやたらリアルです。
 これをお手軽に実現できる2D専用の物理エンジンもあります。
 Box2D

 これは、もともとC++用のライブラリですが、JavaやFlash(ActionScript)、JavaScript等いろんな言語用に移植されています。
 .Net版もあります。
 box2dx -Box2DX is a C# port of Box2D - 2D Physics Engine.-

 というわけで、C#から呼び出して動かしてみました。
 →スクリーンショット

 なかなかリアルにうごきますでしょ?

 プログラムは↓からダウンロードできます。
http://dokokano.net/~fslasht/warehouse/programs/testBox2d_20090318.zip

【動作環境】
Windows用。
.Net Framework 2.0が必要です。

【操作方法】
画面を左クリックすると四角、右クリックすると丸が、でてきます。
それぞれ物理法則にしたがって動きます。

【開発について】
 C#で開発(VS2008EE)してます。ソースつき。
 うまくビルド出来ないときは「Box2DX.dll」を参照に加えてみてください。

● Box2Dをはじめよう

 僕の場合、以下のような流れで調べていきました。

・入門編
 →Box2DでActionScript物理プログラミング:第1回 Box2Dを使ってみよう (技術評論社)
 Flashでの利用を前提とした記事ですが、Box2Dの考え方や出来ることがよくわかります。

・ライブラリをダウンロードしよう
 →Downloads - box2dx - Google Code:
 .Net版のプロジェクトページからダウンロード
 「Box2DX-2.0.1.3-r175-RC-DemoSuite.zip」

・サンプルを動かしてみる
 DLLとサンプルプログラムが入ってます(Windows用)。
 とりあえず動かしてみよう。
 ・HelloWorld.exe エンジンの動作結果を文字だけで表示
 ・TestBed.exe いろんなシーンのサンプルを動かせます。タノシス

・ソースを見てみよう
 HelloWorld.exeのソースは、ブラウザでも見られます。→Program.cs
 地面とオブジェクトを定義すると、オブジェクトが地面に落ちる。
 ・・・というのを座標表示します。
 グラフィックはでませんがソースみながら実行結果をみるとわかりやすいかも。
 ソースは結構短いです。

・マニュアル
 公式マニュアル(英語)はこちら
 Box2D v2.0.2 User Manual 

 ↓のブログで翻訳中。こちら大変参考になりました。
 Box2Dユーザマニュアル

 こんな感じで、HelloWorld.exeのソースを改造して、グラフィックつけたりしていっています。
 僕のプログラムはソース付なので参考になるといいなあ。いろいろ改造してみてちょ。

 これをつかって何かゲーム作ってみたいですね。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

「毎々お世話になっております。仕様書を頂きたく。」「拝承」 -- ある会社の日常

読み込み中...