1

私はクロスプラットフォーム (Windows、Linux、Mac) の C++ 2D ゲーム エンジンを探しています。ただのくだらないシングルトンなどではなく、実際のオブジェクト指向のアプローチを採用しています。小規模で物理ベースの無料のオープン ソース ゲームを作成しようと考えているため、ライセンスは MIT/BSD または GPL のいずれかである必要があります。

私は多くの良い選択肢を見つけましたが、それらはすべて高級言語であり、開発は停滞しているように見えました. たとえば、LibGosu は素晴らしいように見えますが、衝突検出などの基本的な機能が欠けています。LOVE、Cocos2D は素晴らしいですが、それぞれ Lua と Python にあります。私の人生を依存関係の地獄にせず、適切なオブジェクト指向コードを書くことを可能にする、優れた C++ の代替手段はありますか?

4

7 に答える 7

4

事前に構築されたオブジェクト モデルをすぐに使用できるようにすることと、独自のオブジェクト モデルを展開することの間にはトレードオフがあります。事前に構築された OM から開始する方が速いかもしれませんが、後でニーズに合わない可能性があり、ニーズに合わせて変更 (または回避する可能性が高い) するのは面倒です。これが、多くのエンジンがその機能をわずかに低いレベルで公開し、それに対してクライアントをコーディングする可能性がある理由であり、自分で「接着剤」レイヤーを作成する必要があります。

エンジンの検索に関しては、クワッド/スプライトを備えた 3D エンジンと、カメラの正射影 (平面を移動するように制限されているだけ) を使用して、2D エンジンと同じ効果を得ることができます。基本的に、3D の Z コンポーネントを修正することができ (たとえば0)、多かれ少なかれ 2D のように扱うことができます。さらに、必要に応じて、後で 3D の機能や概念を簡単に組み込むことができるという追加の利点を備えた、よりパフォーマンスの高いエンジンが得られる可能性があります。

2D エンジンに限定する場合よりも、(API/OM の意味で) 必要なものを見つける可能性がはるかに広くなります。

于 2012-08-21T06:02:38.547 に答える
2

cocos2d-iphoneのc++ポートであるcocos2d-xをチェックしてください。単純な物理学のためのBox2D( http://box2d.org/ )と組み合わせると、多くの可能性を提供します。

どちらもc++であり、それぞれMITおよびzlibライセンスに基づいています。

編集:cocos2d-x v2以降、Linuxポートはサポートされなくなりました(http://www.cocos2d-x.org/projects/cocos2d-x/wiki/Tutorials

于 2012-08-21T07:51:18.820 に答える
1

ClanLibを見ましたか?

自分で小さな 2D ゲームを作成するために使用しました。Linux と Windows がサポートされており (ただし、Mac は部分的にしかサポートされていません)、C++ です。また、多くの基本機能とオプションのグラフィックス カード アクセラレーションなどを備えています。ライセンスは非常に自由です。

于 2012-08-21T07:23:38.560 に答える
1

SFMLを使用できます

使い方は簡単で、追加できる多くの物理エンジンがあります。

于 2013-01-25T07:55:12.357 に答える
0

Angel2dは、開発段階でゲームの高速プロトタイプを開発するためのオブジェクト指向のゲーム エンジンです。C++ でプログラムされているため、後で実際の開発段階でもコードを使用できます。

于 2013-10-06T13:24:27.440 に答える
0

COCOS2D-x で問題ありませんが、衝突検出が含まれていないため、自分で実現するか、サードパーティ製の lib を使用する必要があります。Box2dをお勧めします

于 2013-01-25T07:22:56.953 に答える
0

Oxygineゲーム フレームワークを試してください。SDL2の上に基づいています

于 2014-02-24T22:47:39.590 に答える