回答:
編集:PSA:この答えは2012年に書かれたものであり、3年後にはさらに多くのエンジンが存在し、それらの多くは純粋にモバイルデバイス向けに作られていることに留意してください。この答えを当然のことと考えてはいけません。最近のエンジンをGoogleで検索してください。
IrrlichtをAndroidに移植し、2Dゲームに使用しています。それは最善の解決策ではありませんが、強力なパフォーマンスを持っています。多くのJavaフレームワークを試しましたが、G1電話で0.2秒の間、ガベージコレクターがゲームを遅らせる可能性があります。したがって、フレームワークは非常に慎重に割り当てを行う必要があります。
商用C ++フレームワーク:
オープンソースのC ++フレームワーク:
Javaオープンソースフレームワーク:
物理エンジン:
警告、FroyoとJITを使用すると、Javaライブラリのパフォーマンスが大幅に向上します。ただし、ガベージコレクターの問題は常に有効です。Gingerbreadでは、ガベージコレクターが連続しているため、問題はありません。
誰もlibgdxに言及していないことに驚きました。 http://code.google.com/p/libgdx/
AndEngineはかなり新しいですが、オープンソースであり、有望に見えます。
自己説明:
無料のAndroid 2D OpenGLゲームエンジン。AndEngineはNicolas Gramlichによって開発されました。
Unity3D(技術的には2Dゲームの作成に使用できます)は、Android向けの「近日公開」です:http : //unity3d.com/
Android 用cocos2dは、iPhoneのcocos2dライブラリに基づいています。現時点でどれだけ使えるかはわかりませんが、チェックする価値はあります。
androidbox2dは、Box2DのAndroidポートです。Box2Dは、機能豊富な2D剛体物理エンジンです。
現在進行中のSDLの Androidポートがあり、SDLはおそらく最高の2Dグラフィックフレームワークです。それはBlizzardのリードの1人によって設計されたため、ゲームビルドのいくつかの本当の専門知識がそれに加わったことを知っています。
SIO2ゲームエンジン。Androidを完全にサポートする新しいバージョンをリリースしました。それを使用して2Dおよび3Dゲームを構築し、異なるプラットフォーム間で移植できます。http://sio2interactive.com
私は、Windows MobileとAndroidの両方に対応するYoghurtGumというオープンソースの2Dゲームエンジンを開発しています。ただし、すべてをAndroid C ++に移植することは非常に困難です。
これはこれまでで最も役に立たない答えです、私はよく知っています。
AIR for Androidで開発したい場合は、Flashを使用できます。Flash自体にはゲーム固有の機能はありませんが、Web上でのFlashの成功のおかげで、特にゲーム用に設計された膨大な量のサードパーティライブラリがあります。
Flashのゲーム用のより一般的なサードパーティフレームワークには、Flixel(http://flixel.org/)およびPushButtonEngine(http://pushbuttonengine.com/)が含まれます。これらはゲーム開発用に完全に設計されています。FlashにはBox2Dのバージョンもあります(上記の物理エンジン- http://box2dflash.sourceforge.net/)などPapervision(http://code.google.com/p/papervision3d/)などの種々の3Dライブラリは、あります将来その道を行きたいなら
ただし、AIRでの開発の主な欠点は、Froyo 2.2以降をターゲットにする必要があることを確信していることです。そのため、古い携帯電話は取り残されます。
Cocos2D-xは、Android NDKを対象としたC ++で記述されたiPhone用Cocos2Dの移植版であり、iPhoneバージョンと同等の機能を実現するために積極的に開発されています。ガベージコレクションの問題は発生せず、iOS、Win32、およびおそらく最終的には近い将来OSXに比較的簡単に移植できます。