4

優れた Android ゲームを作成するための最良の方法またはツールを知りたいです!つまり、「優れた」とは、ゲームが遅延などのない優れたパフォーマンスを備えている必要があることを意味します..

なので2Dゲーム開発から始めるので「ゲームエンジン」は避けたい!..

では、最善の方法は何ですか?! - Open GL ES または別の方法で作成するには?! ..

4

4 に答える 4

8

レプリカ アイランドを見れば、OpenGL グラフィックス プログラミングについて多くのことを学べるはずです 。エンジンを使用しないオープンソースの 2D プラットフォーム ゲームです。著者は、あなたが興味を持つかもしれない Google IO に関するいくつかの講演を行いました。

于 2012-04-25T08:27:29.910 に答える
7

これは大まかな質問であると考えられる可能性があります。ゲームの作成方法についてはお答えできません。しかし、あなたの最後の質問への回答: はい、OpenGL は 2D または 3D で高性能ゲームを作成するための最良の方法です。動きが遅いターン ベースのゲームの場合は、基本的なビュー ウィジェットを使用CanvasSurfaceViewて、ゲーム ボードのレイアウトを構築することもできます。

しかし、それが初めてのゲームである場合は、十分な時間と忍耐力がない限り、既存のゲーム エンジンを試すことを強くお勧めします。まともなゲーム エンジンを作成するのにどれだけの労力が費やされているかは、作成の途中 (または 10% まで) になるまで分からないかもしれません。LibGDX のようなエンジンのソースを見て、自分が書けるようなものかどうかを考えてみてください。

Android グラフィックス デベロッパー ガイドには多くの情報があります。

于 2012-04-25T08:22:10.510 に答える
2

単純なゲームを作成する場合は、Basic android を使用します。大きなゲームの場合、ゲーム エンジンがないと、ゲームの開発はより重いプロセスになります。大量の画像を使用する場合は、メモリの問題が発生します( OOM). もしあなたがゲームエンジンに慣れていれば、将来のゲーム開発が容易になります. シンプルなゲームを作っているなら、ゲームエンジンは必要ありません.

非常に多くのゲームエンジンが利用可能です

エンジン、libgdx、cocos2d..

于 2012-04-25T08:31:51.793 に答える
2

Android で 2D ゲームを開発するのにゲーム エンジンは必要ありません。SurfaceView を使用する必要もありません。SurfaceView、OpenGL、AndEngine、および (おそらく他のゲーム エンジン) には、さまざまな Android デバイス間で一貫したスプライト アニメーションの速度とスプライトのサイズに関する問題があります。特にゲームに複雑なスプライトの動きがある場合。私は、画面のサイズと密度に関連してスプライトとスプライトのサイズが一定の速度で動く 2D ゲームを構築しようとして夢中になりました (例: タブレットと携帯電話)。そこで、ゲーム エンジンをやめることにしました。これが、最近公開された最初の 2D Android ゲームを完成させた方法です。

  1. スプライト画像には drawable-nodpi を使用します (画面の密度とサイズ全体でスプライト サイズの一貫性を確保します)。

  2. さまざまなレイアウトを使用して、さまざまな画面サイズをサポートします (例: layout-large、layout-xlarge など...)。

  3. TranslateAnimation と ObjectAnimator を使用して、画面全体でスプライトの動きをアニメーション化する

  4. 数学を使用してスプライトの衝突を計算します (例: 画面座標やスプライトの位置など)。

  5. ハンドラーと条件ステートメントを使用してゲーム イベントを制御する

ゲームをチェックアウトすることで、ゲームエンジンなしで 2D Android ゲームを開発するための上記のガイドに従った結果をテストできます。Google Play で入手できる Yum Yum Pow と呼ばれます。無料の限定版は Google Play でも入手できます。私が思うに無料のアプリにしかリンクできないので、ここにあります:

https://play.google.com/store/apps/details?id=com.wildroid.yum.yum.pow.limited

于 2014-10-08T23:28:55.610 に答える