3Dの前に2Dのゲーム開発を学ぶべきですか?[閉まっている]


14

私はiPhoneアプリ開発者です。iOSのゲームに興味があります。問題は、Unityのような3Dゲームを学ぶ前に、Cocos 2DやCorona SDKのような2Dを学ぶことから始めるべきですか?3Dゲームにもっと興味がありますが、2Dゲームを知ることが3D開発を学ぶための前提条件だと思いますか?



申し訳ありませんが、与えられた質問はおそらく私がリンクした質問のoneではないと思います。答えは同じことの多くをカバーしていますが。
bummzack

回答:


11

それはあなたが数学にどれだけ強いか 3Dゲームプログラミングの概念に依存します

x、yの位置と速度の概念(およびそれらの加算と減算-基本的にはベクトル)と2Dボックスの衝突だけを使用して、2Dを取得できます。

3Dでは、投影行列、表示行列、フラスタなど、さらに多くの数学を心配する必要があります。

さらに、使用している描画APIのはるかに豊富な関数セットと対話する必要があります(3Dを実行しているという事実のため、3Dを処理するより多くの関数を学習する必要があります) )。

マイクロソフトXNAは持っている優れた 2Dに出始めのサポートをし、使用して簡単にレンダリング可能SpriteBatchを。3Dに挑戦するとすぐに、自動的にVertexBufferまたはModelを学習する必要がありModelBonesとそれに関連する他のすべてのものが自動的に学習されます。

把握する必要がある概念が少ないという理由だけで2Dを開始するのが最善です(2Dスプライト?簡単な説明!)。ある程度の経験を積んだら、3Dをうまくやってください。


9

2Dと3Dのゲーム開発の唯一の基本的な違いは、3番目の軸を使用するかどうかです。Unityのようなエンジンを使用している場合、モデルの代わりに正投影カメラ投影とスプライトを使用するだけで、2Dゲームを3Dゲームと同じくらい簡単に作成できます。

そうは言っても、3Dの大量のリフティングを行うエンジンを使用していない場合は、はるかに困難です。この質問に対する答えを参照してください:ゲームの2Dと3Dを決定する際に考慮すべきことは何ですか?

あなたがすべきことはあなたがどのゲームを作りたいかを決めることであり、アートとデザインはそれが2Dまたは3Dである必要があるかどうかを教えてくれます。


4
単純化しすぎていると思います。2Dは、3番目の軸を捨てることで、考えることはずっと少ないので、簡単です。衝突はより簡単になり、紙で問題を議論するのはより簡単になり、2Dゲームをプログラムする方法を学ぶのは3Dゲームをプログラムする方法を学ぶより簡単です。
ボボボボ

3
それは単純化ですが、主に私が得ていたのは、1)ゲームで行うことの大部分のサブセット(UIフロー、コアメカニクス、ネットワーキングなど)に対して2Dまたは3Dは重要ではないこと、および2)堅牢なミドルウェア(特にUnity)を使用すると、数学の大部分が実行され、ゲームロジック自体に集中できるようになります。
テトラッド

最後の文はそれを否定しています。
ティム・ホルト

5

アートとデザインについて考えるべきであり、それが2Dまたは3Dである必要がある場合、それがあなたを導くことになるという点で、Tetradに同意します。また、最初に2Dゲームを作成することをお勧めします。そうすることで、3Dゲームに伴う困難なことを考える必要がなくなります。また、2Dゲームでは、脳が処理する情報が少なくなります。これは、よりカジュアルな体験に必要なものです。

過去3年間で成功したインディーズゲームのほとんどを見ると、それらの多くは2Dでした。

http://www.braid-game.com/
http://limbogame.org/
http://supermeatboy.com/
http://www.andyetitmoves.net/

したがって、企業は2Dゲームだけを成功させることができます。ゲームの成功は、ゲームの仕組み、ストーリー、美学、テクノロジーからもたらされます。それ以外の場合は、テトラッドとして知られています。私は話題を逃しているので、脱線します。


成功特性としてコンテンツ(ストーリーなど)の品質の重要性を強調しているため、その最後の段落に+1-一部のゲームビルダーはこれらの他の要因を逃して3Dの側面のみに焦点を当てているようですが、良いストーリーと熟考された背景が競技場にもたらすことができる深さを評価する多くのファンです(次元の数に関係なく)。
ランドルフリチャードソン

私はあなたの声明の大部分に同意しますが、カジュアルとは考えられない優れた2Dゲームがいくつかありましたが、あなたの平均的な3Dシューティングゲームは比較してはるかに少ないです。
エドウィンバック

3

2Dアートアセットを使用して練習する方が簡単になることを覚えておいてください。したがって、2Dゲーム開発の学習は3Dゲーム開発の学習の前提条件ではないと思いますが(グラフィックコードの上部のゲームコードはほとんど同じです)、まだ初心者でない限り、ほとんどの初心者は2Dゲームから始めることをお勧めします3Dグラフィックスのための堅実なリソースを持っている(たとえば、3Dアーティストである仲間と一緒に学習する)。

コード面では、難易度は、学習しようとしていることと、使用するエンジンによって異なります(特に、独自のエンジンを作成する場合)。低レベルの3Dグラフィックコードは、低レベルの2Dグラフィックコードよりもはるかに複雑ですが、Unityのようなエンジンを使用する場合、低レベルのグラフィックコードを記述することはありません。そのエンジンに組み込まれている3Dゲームのコードは、2Dゲームのコードほど複雑ではありません。確かに、あなたが話している特定のエンジンにもよりますが、かなり複雑ではないかもしれません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.