他の投稿のほとんどは「エンジンではなくゲームを作成する」ですが、作成したい特定のゲームを考えており、他の人のコードから始めることをお勧めします。ベースまたはゼロから開始します。
自分の技術をロールする必要があることを知らない限り、あなたは自分の技術をロールするべきではありません。それは軽快に聞こえるかもしれませんが、それは本当に唯一の正しい答えです。ほとんどの決定と同様に、トレードオフがあります。特定の状況でコスト/利益分析を決定できるのはあなただけです。
次のことを理解しておく必要があります(このリストがすべてを網羅しているわけではありません)。
- 使用できるミドルウェアはすでに存在します(「エンジン」など)
- そのミドルウェアがテーブルにもたらすものは、機能的に賢明です。
- 特にマルチプラットフォームのサポートに関心がある場合は、ミドルウェアの成熟度/証明度
- 開発のスピードアップに役立つミドルウェアが提供する、または提供しないツールの種類(独自の技術でツールを割引しないでください)
- ミドルウェアにはどのような制限がありますか(簡単な例として、Unity 3.xはiOSのダイナミックライトからのリアルタイムシャドウを行いませんでした)
- どのような具体的には、あなたの特定のゲームが特徴持たなければなりません。
- あなたの締め切りは何ですか、そしてミドルウェアがあなたを得るところまで立ち上がるのにどれだけの時間を費やすか、ミドルウェアの費用はいくらですか。
- ミドルウェアの拡張性(たとえば、UnityでiOSの影の問題を回避するには、blobの影を使用します。または、投影の影を使用することもできます。)
(具体的には、「より多くのコントロール」をそこに配置しなかったことに注意してください。それは、「私が書いていないコードが嫌い」から「見、理解し、この特定の効果を達成するために、物理エンジンのすべての変数を微調整します。」最初の変数は実際には有効な考慮事項ではありませんが、2番目の変数は重要です。)
個人的には、低予算のゲームのために独自の技術を投入することは、努力する価値はほとんどありません。最近の安いエンジンを手に入れる力の量はばかげています。あなたは、数百万ドルのトリプルAエンジンライセンスを決定する時点ではありません。たとえば、Unityが$ 3kで提供するものを打ち負かすことはできません。または、Cocos2dの費用は無料です(無料ではありませんか?)。
現在、他のエンジンでは提供できない、または適切なフレームレートで提供できない技術に主眼を置いているゲームの場合、何ができるかを調査する価値があります。ただし、他のミドルウェアを完全に捨てるわけではありません。独自のレンダラーなどが必要だからといって、物理学、サウンド、UI、その他のミドルウェアを使用できないというわけではありません。