前回、Cocos2d-xで物理エンジンを使ってみたのですが、今度はJavaで物理エンジンを使ってみました。
サーバ側で物理エンジンを使って物体の場所をクライアントに通知する、クライアントはその通知によって物体を動かす、というゲームを作りたいのです。
Javaの物理エンジンとして有名なのは、BulletのJava版JBulletでしょうか。
しかし、JBulletは3D向きのようです。(2Dもできるようですが)
今回試したいのは2D物理エンジンなので、他の物理エンジンを探します。
そして試してみたのが「dyn4j」「JBox2D」のふたつです。
- dyn4j
新しいです。
フォーラムはありますが、資料がほとんどありません。ましてや日本語など。。。
dyn4jのサイトからダウンロードしたサンプルを見て書くしかないです。
しかし、物理オブジェクトの配置の仕方がよくわからず。。。
posotionのようなプロパティは見当たらず、サンプルを見るとtranslateで移動している?
そして、物理オブジェクトへの力のかけ方もよくわからず。。。
新しくていいと思って使ってみたdyn4jですが、違う物理エンジンに切り替えてみることにしました。
- JBox2D
最近更新がないとのことです。
dyn4jの後に書くと、少々手間がかかる気もしましたが(BodyDefからBodyを作るとか)、Java以外のBox2Dでも参考になる資料がたくさんあることもあり、使いやすいと感じました。
まだ物理エンジンは評価するほど使いこなせていないので、これからもっと使ってみての記録を残していきたいと思います。