このエントリーをはてなブックマークに追加
>> Android用語集

物理エンジン(Physics Engine)

AndroidJava言語ですので、Java用の各種物理エンジンをそのまま使えます。 物理エンジンを使うと、リアルな動きが可能です。 また衝突判定もありますので、ゲームを作るのにも便利です。

ただし、Android 1.1ではAndroid専用にチューニング(Object作らないなど)されていなければ、どれもGCが頻発して一時停止しますが (AndroidではGCが起きると場合によっては200msぐらい、すべての処理が止まります。FPS 20でも 1フレーム 50ms以内で処理しないといけないので、GCが起きると4フレームぐらい止まります。アクションゲームでは問題です)

物理エンジンは、大きく分けると2Dエンジンと3Dエンジンとがあります。 (3Dエンジンは対応していれば2Dエンジンとしても使えるみたいです)

2Dエンジン

JBox2D

http://www.jbox2d.org/ 速度もそこそこ、サンプルも豊富なので一番使いやすかった。

最近、NDKを使いBox2dを直接呼び出すコードが出回ってきた。 http://groups.google.com/group/android-ndk/browse_thread/thread/10f2e02c5d6857cb

NDK版を使えば、iphone 3Gと同等の速度で動くだろう。

Phys2D

http://www.cokeandcode.com/phys2d/ 動きはリアルだけど、Androidでは動きが遅い。

Simpull

http://code.google.com/p/simpull/ この中では一番シンプル、パーティクル用としては最適 作者がMLに投稿していたし一番最初にAndroidチューニングされるかも

APE

http://www.cove.org/ape/ Java版はどうも古いみたいです。 awtのクラスとか使っているのでそのままでは動きません。 精度はSimpullに近いです。 動作速度はPhys2D並に遅かったです。 ただコードはシンプルなのとライセンスから勉強用にいいかも

3Dエンジン

JBullet

http://jbullet.advel.cz/ 本家のBulletに比べると、バージョン少し古め。本家の最新版では2Dエンジンにも対応予定 未検証

関連

Developerのポスト(英語) http://groups.google.com/group/android-developers/browse_thread/thread/d06f9e739790ee1f/b14f7478412b6196 Developerのポストについて http://blog.akaiho.com/archives/455


関連サイト
www.akjava.com | github.com/akjava
Copyright (C) 2008-20014 Aki Miyazakion Google+ All Rights Reserved.