jarinosuke blog

about software engineering, mostly about iOS

iPhoneで、これから始める物理エンジン。

物理エンジン

最近では、様々なゲームで物理エンジンが用いられていますよね。
iPhoneのゲームでもそれは顕著で、最近ではAngry Birdsなんかが有名だと思います。
物理エンジンを使い現実の世界をゲーム内でシミュレートすることで、ユーザは思わぬ偶然から想像しなかったゲームクリアを味わい興奮を味わえます。
物理エンジンを使わない手は無いですよね!

しかし、物理エンジンを一から実装するにはとても労力がかかります。というか、無理です。
ではオープンソースかつ、iPhone上で手軽にゲームに組み込める物理エンジンなんてあるんでしょうか?
あります。そうです、cocos2dです。

Box2d

Box2dは様々なプラットフォーム、言語環境で展開されている物理エンジンです。
詳しくは自分で調べてみて下さい。

さて、coco2dには標準でBox2dとChipmunkという、ふたつの物理エンジンが付いています。
またそれぞれのテンプレートも付属であり、それを元に簡単にアプリケーションを作成することが出来ます。
素晴らしい世の中ですね。

Box2d v.s. Chipmunk

では二つの違いは何なんでしょうか。
一つは実装されている言語の違いです。前者はC++、後者はCです。
他は詳しくは知りません。
僕はC++を勉強したいのでBox2dを使っています。利用者もBox2dの方が多いんではないでしょうか。

世界を、つくる。

ということで何回かに分けて、僕のネタが続く限りCocos2d上で利用する物理エンジンについてのエントリを書いていきたいと思います。
といっても物理について特に詳しくありませんが。よろしくお願いします。

目次

衝突判定コールバック関数の作成
動的物体をつなぎ合わせる