263

Unity3dでしばらく作業してきましたが、OnGUI()またはGUITexturesを使用した2Dパーツが不器用であることがわかりました。また、Unity3dで行われる最小のゲ​​ームでさえ、少なくとも10MBのダウンロードであり、2Dゲームには多すぎます。

だから、私は現在、2D用のエンジンを探しています。私はCocos2Dを試しましたが、それはiOSのみであり、Android用にすべてを別の言語に書き直したくありません(たとえば、Android用のCocos2dのJavaポートはオプションではありません)。代わりに、コードを1回記述して、iOS、Android、場合によってはWindowsPhone7に簡単にデプロイしたいと思います。MacとWindowsの両方を使用しています。

さらに詳しく説明すると、エンジンに対する私の要件は次のとおりです。

  • クロスプラットフォームである必要があります
  • 効率的でなければなりません
  • 私はWeb開発者ではないので、Flash、Javascript、HTML5ではなく、C ++、Java、C#、またはObjectiveCに慣れている必要があります。
  • 大規模なコミュニティ、チュートリアル、iOSまたはAndroidで直接開発する場合に必要なもののほとんどをカバーする追加のライブラリ(アプリ内課金、Facebookなど)が必要です。
  • 最終的に納品されるパッケージは大きすぎてはなりません
  • エンジンは無料でもかまいませんが、リーズナブルな価格で購入してもかまいません

私は次のエンジンを見つけました:

  • マーマレード(およびその上にあるIwGameエンジン)-C ++は、マーマレードの全体的な非常に肯定的なレビューを見つけましたが、IwGameについてはよくわかりません。編集(2013年3月):Marmalade SDKには、Cocos2Dxといくつかの組み込みIDEが含まれているようです。これにより、はるかに優れたものになります(そして、私にとっては問題ないインディー開発者の場合、年間150ドルかかります)。
  • Corona SDK -Lua(効率が疑わしい)、コードをコンパイルするためにインターネット接続も必要
  • Cocos2d-x -C ++、開発者から多くのレビューを受けましたが、ほとんどが肯定的で、多くの人が2Dに最適だと考えています
  • パーティクルコード-Java+Eclipse、レビューやコメントは見つかりませんでした
  • モアイ-ルア、レビューや意見は見つかりませんでした
  • モンキーエンジン-機能が少なすぎるようです
  • Haxenme-それはFlashです、私はそれを使ったことがなく、使いたくありません
  • Unity3dを使用しますが、2DToolkitなどの2Dパッケージを使用します
  • SDLAndroid(これもiOSへの移植-サポートや現在の開発はあまりないようです(?)
  • GLBasic-基本的な言語、私はそれが好きではありません
  • playN-開発の初期段階のようです(?)
  • Gamvas -HTML5、私には成熟したエンジンのようには見えません
  • Ignifuga -Python、これも成熟していないようです
  • ORX-まだ開発されているかどうかわからない(?)
  • コンストラクト2 -GameMakerに思い出させます。ラピッドプロトタイピングには問題ないかもしれませんが、業界レベルのゲームには問題ありません。
  • XNAを使用してから、 ExEnを使用してゲームを移植します( iOSに移植するにはMono Touchが必要で、Androidに移植するにはAndroid用のMonoが必要です)-C#であり、xBox(私はAndroidから来ています)などのMicrosoft製品から来ている人にとってはおそらくもっと考えられています。また、これらのモノラルツールは小規模な開発者にとって合計800ドルかかります
  • 影響-JavaScript、HTML5を使用します。私はJavaScript(Unity3dで推奨されるC#など)にはあまり詳しくありません。また、ブラウザーで実行されるため、効率についてもよくわかりません(?)
  • GameMaker-独自のスクリプト言語GMLであり、私は実際にこれを非プログラマー向けのツールとして覚えています。それは実際に実際のエンジンに成長しましたか?つまり、深刻な開発を意味しますか?
  • AppGameKit -C ++ですが、まだかなり新しいようです。レビューは見つかりませんでした
  • Cocos2DとObjectiveCを使用してiOS専用に開発し、StellaSDKを使用してAndroid用のAPKを作成します。誰かがこれをしましたか?制限があると確信しています。Googleのアプリ内課金、AdMob、AndroidでのFacebookの統合についてはどうでしょうか。
  • Moscrif -JavaScript、以前のWeb開発者向けのようです
  • スターリング-フラッシュ11、私はフラッシュにあまり興味がありません
  • ND2D-まだ1.0ではありませんが、多くの機能がありますか?

したがって、エンジンの使用経験からコメントして、リスト内のどれ(または私が見逃したもの)が説明されている要件に最適であるかを提案していただければ幸いです。また、いくつかのエンジンについての第一印象が間違っているかもしれません。

私は現在、Marmalade + IwGameを最良の選択肢と考えていますが、Cocos2d-xとParticleコードについての情報があまりないため、よくわかりません。

ありがとうございました!

編集(2013年6月):これまでに、2つのクロスプラットフォーム2Dゲームを作成し、両方に2DToolkitプラグインを備えたUnity3Dを使用しました。シンプルなGUIを使ったゲームでは、Unity独自のシンプルな自作GUIシステムを使用しました。より複雑なもの(たとえば、GUI要素がオーバーラップする可能性がある場合)には、NGUIプラグインを使用しました。最近、2D ToolkitはGUI用にいくつかのクラスを追加しました。これは、NGUIを2D Toolkitと組み合わせるときに、テクスチャアトラスに2つの異なるシステムを使用する必要があるため非常に便利です。次の2Dゲームで間違いなく試してみます。2DゲームにUnity3Dを選択した主な理由は、経験と再利用のための蓄積されたコードスニペットの両方の点でUnity3Dにすでに深く関わっていたためです。また、3Dゲーム用にUnity3D pro(AndroidProとiOSProを含む)を購入しました。2Dゲームもカバーするために、2DToolkitに追加の$60を支払うだけで十分に理にかなっています。私は今のところしません」私の決定を後悔している、それは私の場合に最適だったようだ。私に頭痛の種を与えた唯一のことは、Prime31のプラグイン(AndroidとiOSのソーシャルプラグイン)でソーシャル機能を追加することでしたが、それらのバグはPrime31のせいではなく、代わりにTwitter / Facebookのせいであると思いますので、おそらく同じバグがその他のエンジンまたはプラグイン。

編集(2014年1月):Unity 4.3で、私の質問に対する答えは今ではかなり明白だと思います:Unityの新しいスプライトシステムとおそらく2DToolkitは、特に(私のように)しばらくUnityを使用している人にとっては、他のものを完全に打ち負かしますアドオン付きのProバージョンを購入しました。

4

11 に答える 11

43

LibGDXは私が今まで使った中で最高のエンジンの 1 つで、ほぼすべてのプラットフォームで動作し、私が行ったほとんどのテストで cocos2d-x の 2 倍の速度で動作します。好きな JVM 言語を使用できます。これは Java の 13 部構成のチュートリアルで、jrubyを使用した一連チュートリアルです。こちらで動作する優れたスケルトン アニメーション ツールがあり、タイル化された TMX マップもサポートするように焼き付けられています。UI フレームワークは素晴らしく、cocos2d のシーン、スプライト、アクションに似たシーン グラフとアクター スタイルの API を備えています。コミュニティは素晴らしく、更新も頻繁で、ドキュメントも充実しています。Java の部分に怯える必要はありません。高速であり、jruby や scala など、好きなものを使用できます。2D または 3D の作業に強くお勧めします。両方をサポートしています。

于 2013-01-22T04:31:44.267 に答える
33

私は一緒に仕事をしてきましたがMarmalade、満足のいくものでした。無料ではなく、開発者コミュニティも十分に大きくありませんが、チュートリアルを使用してほとんどのタスクを処理できます. (私も何度か得たら、チュートリアルを書きます)。
IwGameは、マーマレード ユーザーの 1 人によって開発された優れたエンジンです。基本的なゲームには適していますが、本格的な高度なゲームを探している場合はCocos2D-x、マーマレードと一緒に使用することもできます. 私は Cocos2D-x を使ったことはありませんが、Marmalade の に Extension がありGithubます。
Marmalade のもう 1 つの良い点はEDK (Extension Development Kit)、必要な機能の拡張機能を作成できることです。これは、ネイティブ コードでは利用できますが、Marmalade では利用できません。私'

編集:
マーマレードには、2D 開発専用の独自の RAD (Rapid Application Development) ツールがあり、Marmalade Quick. コーディングは C++ ではなく Lua で行われますが、C++ Marmalade の上に構築されているため、C++ ライブラリやその他すべての EDK 拡張機能を簡単に含めることができます。また、Cocos-2DxおよびBox2D拡張機能は Quick にあらかじめ含まれています。彼らは最近、そのリリース バージョンを立ち上げました (3 ~ 4 か月間ベータ版でした)。あなたは本当に 2D 開発だけを探していると思います。ぜひ試してみてください。

更新:
Unity3D は最近 2D ゲームのサポートを開始しました。これは、GUI とエディターにより、他のどの 2D ゲーム エンジンよりも優れているようです。物理演算、スプライトなどのサポートが組み込まれています。ご覧いただけます。

Update 2
マーマレードは、社内でのゲーム制作を優先して、SDK を廃止する予定です。したがって、それに依存するのは賢明な決定ではありません。

于 2012-09-03T07:22:17.490 に答える
13

あなたはHaxe/NMEについて言及していますが、本能的にそれを嫌っているようです。しかし、それに関する私の経験は非常にポジティブです。確かに、この API は Flash API の再実装ですが、対象が Flash に限定されるわけではなく、HTML5 またはネイティブの Windows、Mac、iOS、および Android アプリにコンパイルすることもできます。Haxe は、Java や C# に似た快適でモダンな言語です。

興味があれば、Haxe/NME を使用した経験について少し書いています:リンク

于 2012-09-03T12:29:06.443 に答える
7

これは、LinkedIn の Richard Pickup からの私の同様の質問への返信です。

iOSとAndroidの両方でcocos 2dxマーマレードとユニティを使用しました。2D ゲームでは常に cocos2dx を使用します。Unity は 2D ゲームにはやり過ぎです。既に述べたように、マーマレードは単なる抽象化レイヤーであり、実際にはゲーム エンジンではありません。マーマレードの上で cocos2d を実行することもできます。私のアプローチは、iOS と android で cocos2dx を使用し、将来、bb10 に移植して電話 7 を獲得する簡単な方法として、マーマレードの上で cocosd2dx コードを実行することです。

于 2012-09-04T10:02:27.750 に答える
6

BadLogicGamesの LibGDX はどうですか?

于 2013-01-20T16:03:24.240 に答える
6

Loom ( http://theengine.co ) は、デバイス上のコードとアセットのホットスワップを特徴とする新しいクロス プラットフォームの 2D ゲーム エンジンです。つまり、Photoshop でアセットを操作したり、コードを更新したり、アプリやゲームの UI を変更したり、アプリの実行中にデバイスで変更を確認したりできます。

私が聞いたり、遊んだことのある他のクロスプラットフォーム ゲーム エンジンを考えてみると、Loom ゲーム エンジンは多くの優れた機能を備えた私の意見では群を抜いて最高です。他の同様のゲーム エンジン (Corona SDK、MOAI SDK、Gideros Mobile) のほとんどは Lua ベースです (少なくとも私にとっては奇妙な構文を使用しています)。Loom ゲーム エンジンは、ActionScript 3 から着想を得たスクリプト言語である LoomScripts を使用し、C# から借用したいくつかの機能を備えています。ActionScript 3、C#、または Java で開発したことがある場合は、LoomScript になじみがあるように見えるでしょう (そして、Lua の構文よりもこの構文に慣れています)。

Loom ゲーム エンジンの 1 年間のライセンスは 500 ドルで、インディー ゲーム開発者にとって手頃な価格だと思います。数週間前、1 年間のライセンスも無料で提供されました。ライセンスの有効期限が切れた後も、Loom を使用して独自のゲームを作成およびデプロイできますが、それ以上の更新は取得できません。Loom の作成者は非常に自信を持っており、別のライセンスを購入する価値があるように、赤ちゃんを常に改善することを約束しました。

これ以上苦労することなく、Loom の優れた機能を以下に示します。

  1. クロスプラットフォーム (iOS、Android、OS X、Windows、Linux/Ubuntu)

  2. Rails にインスパイアされたワークフローにより、ゲームの作業に時間を費やすことができます (新しいプロジェクトを作成するための 1 つのコマンドと、それを実行するための別のコマンド)

  3. 高速コンパイラ

  4. コードとアセットのライブ編集

  5. サードパーティのライブラリを統合する可能性

  6. レンダリングに Cocos2DX を使用

  7. XML、JSON のサポート

  8. UI 要素をスタイリングするための LML (マークアップ言語) と CSS

  9. UI ライブラリ

  10. 依存性注入

  11. 単体テスト フレームワーク

  12. シマリスの物理学

  13. 変更をライブで確認すると、マルチデバイス開発が容易になります

  14. ダウンロードサイズが小さい

  15. チーム向けに構築

Loom に関するその他のビデオは、http ://www.youtube.com/user/LoomEngine?feature=watch でご覧いただけます。

こちらの 4 部構成の詳細なチュートリアルもご覧ください: http://www.gamefromscratch.com/post/2013/02/28/A-closer-look-at-the-Loom-game-engine-Part-one-getting -started.aspx

于 2013-04-18T13:26:57.007 に答える
5

私はAppGameKitを試しました。これはc++とBasicの両方です。物理学、衝突、ヒープなどを備えたBasicバリアントで2Dゲームをコーディングするのは非常に簡単です。また、活発に開発されており、非常に安価です(65ドル)。主な問題は、Android用にコンパイルするのが本当に難しいことです(ファイルのヒープをダウンロードし、難しいガイドなどに従う必要があります)私の意見では、商用利用にはまだ十分ではありませんが、インディープログラマーには適しています中規模のコミュニティがあります

于 2012-12-19T06:11:23.710 に答える
4

私は現在、コロナをビジネスアプリケーションに使用しており、大きな成功を収めています。ゲームに関する限り、他のクロスプラットフォーム開発エンジンのようなパフォーマンスを提供していないという印象を受けました。Carlos (Ansca Mobile/Corona SDK の創設者) が競合するエンジンで別の会社を立ち上げたことは注目に値します。Appcelerator Titanium 用の Lanica Platino エンジン。私はこれを個人的に扱ったことはありませんが、有望に見えます。ただし、年間 999 ドルの値札が付いていることに注意してください。

そうは言っても、私はしばらくの間 Moai を研究してきました (私はすでに Lua 構文に精通しているので)、有望なようです。モバイル環境に限らず、複数のプラットフォームでコンパイルできる点が魅力です。

マルチメディア フュージョン 2 も、制作されるゲームの複雑さとそこから実現されるパフォーマンスを考慮すると、価値のある候補です。Vincere Totus Astrum ( http://gamesare.com ) が思い浮かびます。

于 2013-08-27T01:54:56.327 に答える
3

最近、私は AS3 エンジンを使用しました: PushButton (現在は機能していませんが、まだ機能しており、他のものを使用できます) でこの作業を行います。Android と iOS で動作させるために、プロジェクトは両方のプラットフォーム用に AIR でコンパイルされ、すべてがパフォーマンスの低下なしに動作しました。Flash Builder は少々高価 (249 ドル) であるため、FlashDevelop を使用できます (AIR でコンパイルするためのチュートリアルがいくつかあります)。

Flash は学習が非常に簡単なため、選択肢の 1 つになる可能性があります。

于 2012-09-10T18:58:22.830 に答える