2Dゲームに3Dエンジンを使用することの長所と短所は何ですか?[閉まっている]


16

2Dゲーム開発のために2Dゲームエンジン(Slick2D / Flixel / FlashPunkなど)と3Dエンジン(Unityなど)を決定する際に初心者が知っておくべき長所と短所は何ですか?

私はインディーズゲームの開発を始めたばかりですが、過去にGame Maker、Flash、XNAに少し手を出したことがあります。Unityについて多くの肯定的なことを聞​​いたことがあり、そのクロスプラットフォームの性質は魅力的ですが、私が理解しているように、Unityはコアの3Dエンジンです。

厳密に2Dゲームの場合、Unityのような3Dエンジンを使用する説得力のある理由はありますか?それとも、最初の学習体験に不必要な複雑さを追加するだけでしょうか?


Unityのような純粋な2Dゲーム(スプライトや2Dの動きなど)や、2Dゲームプレイの3Dゲーム(3Dアセットのように、単一平面上でのみ移動する)のコンテキストを求めていますか?
カオス技術者

私はUnityと協力してCoypu Space Rumbleと呼ばれる2Dゲームを作成した友人がいます。最初の2D部分は明らかに非常に退屈でしたが、その理由については、さらに精度を高めるようお願いします。
ジョナサンコネル


「3Dエンジン」を定義しますか?ゲームプレイを対象とするもの、それとも3Dでレンダリングするものについて話していますか?
ニコルボーラス

@chaosTechnician-1つ目:純粋な2Dスプライト、2D移動、基本的には実際のZ軸はまったくありません(スプライトのレンダリング順序を決定するための単純なZインデックス)
mrohlf

回答:


15

ゲームによって異なりますが、ほとんどの場合、2D専用に設計されたエンジンを使用して厳密に2Dゲームを作成する方が簡単です。

いくつかの長所と短所について(これらの一部は特にUnityに関連し、一部はより一般的です)

短所

  1. 3Dエンジンは通常、3Dモデル(ポリゴンとテクスチャ)であるゲームオブジェクトを中心に設計されています。フラットプレーンを作成してテクスチャを適用することは確かに可能ですが、それを行うときは、エンジンに対して積極的に作業しています。

  2. さらに、多くの3Dエンジンは、テクスチャではなくモデル(リギングやその他のメソッド)にアニメーションが作用することを想定しているため、スプライトシート(1つのテクスチャ上のアニメーションのすべてのフレーム)を処理できません。繰り返しますが、これを回避する方法はありますが、繰り返しますが、これを達成するためにエンジンに対して積極的に取り組んでいます。

  3. 追加された複雑さ。Josh Petrieの答えで述べたように、3dは2dよりもかなり複雑で、主に数学とシーン管理です。オブジェクトの移動と3Dスペースの処理は困難であり、これが最初のゲームの1つである場合、それは非常に難しくなります。良いニュース:Unityはこれらの問題のいくつかを抽象化しますが、まだ対処しなければならないことがいくつかあります(そして抽象化の多くは、2Dスプライトではなく3Dモデルを対象としています)

  4. Unityに付属する、またはUnityで入手できるほとんどのライブラリは、3Dオブジェクト用です。これには、照明、経路探索、物理学などが含まれます。それまでの間、box2dはFlash、XNA、または何か(おそらく)で簡単に動作します。

長所

  1. 3Dアクセラレーション。グラフィックカードは、CPUよりもシーン内の多くのオブジェクトの処理がはるかに優れており、Unityを使用すると、その利点を簡単に得ることができます。これにより、画面上に数千のスプライトを表示したり、パーティクルエフェクトを簡単に追加したり、シェーダーなどの楽しいものを追加して、スペースや時間を自由に歪めるなどのクールなエフェクトをサポートできます。Unityにはこれらのエフェクトの多くが組み込まれているため、非常に簡単です。多くの2dエンジンが舞台裏でOpenGLまたはDirectXを使用し、多くの場合、ハードウェアアクセラレーションも可能です。

  2. モデルのサポート。以前問題だったことを覚えていますか?ええ、それも利益になります。ゲームによっては、回転する球体や3Dオブジェクトのようなクールなものを背景に含めることができると便利な場合があります。ゲームを3Dで作成することもできますが、2Dパースペクティブに強制することで、大量のグラフィックスを追加処理せずにワールドジオメトリを回転させることができます。

  3. 学習3D。多くのゲームは3Dで書かれています。Unityの使い方を学べば、3Dを必要とする次のゲームにそれらのスキルの多くを適用できます。さらに、現在学校を出ている多くのアーティストが3Dモデリングを教えられているので、従来の2Dゲームアーティストよりも3Dアーティストを見つける方が「簡単」です(アーティストが良いかどうかにかかわらず...)

結論

短所はたくさんありますが、プロもかなりいます。それはすべてあなたが作りたいゲームの種類に依存するでしょう、それが価値があるかどうかを決めるのはあなた次第です。Flashは依然として非常に実行可能なオプションであるため、2Dエンジンを使用することに問題はありません。


+1。非常に徹底的で適切な答え。あなたが前にこれに取り組んだという感じがします。
カオス技術者

ありがとう、まさに私が探していたものです!私が見たもののほとんどはOpenGLまたはDirectXの上に構築されているので、2Dエンジンに焦点を当て続けると思います。3Dモデリングは今私の能力から少し外れています。私はいつかUnityを学びたいと思っていますが、2Dゲームを自分のベルトの下に置いた後、おそらくそれに取り組む方が良いでしょう。
mrohlf

また、3Dエンジンを使用すると、スプライトを任意の回転とアルファで本当に簡単に描画できます。純粋な2Dエンジンを持っている場合よりも簡単です。これが、多くの最新の2Dエンジンが実際に3Dである理由です。また、カスタムシェーダーを作成することもできます!
ashes999 14

7

1つの大きな欠点、余分な複雑さです。3Dエンジンは、専用の2Dエンジンと同じレベルの2Dグラフィックスを常にサポートしているわけではありません。これは、2Dシーンの作成と管理に多くの余分な作業が必要であること、および/または3D数学と変換パイプラインの複雑さに対処する必要があることを意味します。特に、3Dグラフィックス理論の基礎に完全に精通していない場合は、画像が表示されないときに迷子になり、混乱することがあります。注意しないと、画像は表示されますが、必ずしも正しいとは限りません(したがって、後で噛みつきます)。

しかし、人間の側面を超えて、3Dエンジンに2Dゲームを構築するために必要なツールがあれば、それを使用することは悪い考えではありません。最近でははるかに普及しており、より積極的に開発される傾向があるため、それはプラスです。さらに、おそらくD3DやOpenGLを舞台裏で使用していない少数の2Dに焦点を当てたエンジンまたはフレームワークがまだ残っているため、最新のGPUのメリットを享受できない可能性があります。

この関連する質問では、3Dをより困難にする可能性のあるものについて多くの議論を見ることができます(ただし、2Dゲームにのみ3Dエンジンを使用する場合は、そのサブセットのみを処理する必要があります)。


2

長所:ビデオカードメーカーは、3Dドライバーを最適化するためにより多くの労力を費やしています。特別なFXやフルオイッシュのために2Dで立ち往生することはありません。あなたは自分自身を何度もシミュレートする必要はありません。視点を切り替えるには、すべてのアートを完全にやり直す必要はありません。視覚的には3Dの方が優れていると主張します。

短所:アセットパイプラインは、おそらくエンジンに適合させる必要があります。2Dで単純な一部の操作は、3Dでより複雑です。ライブラリにはおそらく、決して使用しない余分な機能があります。


0

可能であれば、Unityを学んでください。Unityは、オープンソースで無料のBlender 3Dで本当にうまく機能します。平面を使用してBlenderで2Dをモデリングおよびアニメーション化する方法に関する優れたオンラインチュートリアルが多数あります。また、通常無料または安価でオンラインでダウンロードできるモデルのトンがあり、これを出発点として使用できます。

もちろん、これはあなたがあなた自身のゲームエンジンを作成することに慣れていないことを前提としています。私の今のお気に入りの2Dゲームは、Flashで設計されたSuper Meat Boyであり、プログラミングの終わりはカスタムで行われました。そのゲームの特定のニーズに合ったゲームエンジンを作成しています。これは、あなたに多くの自由を与えるので、そのようなプロジェクトにアプローチする最良の方法です。それは、そのルートに行くには多くの作業が必要だということです。


実際、UNITYが2Dサポートを追加したので、これは非常に簡単です。pcworld.com
2062740

1
私は今でもUnityが2Dゲームを嫌うと言っています。2Dゲームの場合、プロの品質ではありません。Cocos2D-swiftのような堅牢な2Dエンジンと比較してください。それは非常に簡単です。
ジョニー14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.