独自のエンジンを作るためにUnityとUnrealをやめるべき理由(および方法)

今日の一般的なゲームエンジンであるUnreal EngineやUnityのスプラッシュスクリーンが表示されることが多いですが、長年の開発者であるRez Grahamによると、これらは堅牢で成熟したエンジンですが、独立系ゲーム開発者にとって常に最良の選択肢ではありません。 Graham氏は、GDC 2024での「自分自身のゲームエンジンを作るためのケース」というトークで、既存のツールであるフレームワークやライブラリを使用して独自のテクノロジーでゲームを構築することを提唱しました。これにはいくつかのメリットがあり、残念ながら開発者が認識しておく必要のある欠点もあります。

Graham氏は、Electronic ArtsでThe Simsシリーズの仕事の後、BleachKittyの下で独立したゲームを制作してきました。彼の視点と経験から見ると、最も人気のあるゲームエンジンが開発に常に最適とは限らず、それは実際にはあなたの目標と作成したいゲームのタイプに依存するとのことです。これは理にかなっていますが、既存のエンジンを使用するか独自のテクノロジーを構築するかを決定する際に考慮する必要があるいくつかの要素を概説しました。

第三者エンジンを永久に使用するためのライセンス料金は高額になり、Graham氏は「一般的には長期的には費用対効果が高くなります。私は疑惑を抱いていますが、この部屋にいる誰もがゲームを作成して、「オーケー、いいですね。それで完了です。しばらく農夫にならなければならない」とは言っていないでしょう。」と述べました。 これは、将来のプロジェクトでも独自のテクノロジーを使用するということであり、一度限りの投資ではないという意味です。エンジンとその使用方法に完全な制御を持つことはGrahamにとって重要であり、「自分の会社、自分のテクノロジー、自分の世界に投資しているため、長期的には費用対効果が高い。あなたは欲しいものだけを構築します。それは非常に重要で、非常に強力です。」と続けました。

基本的な考え方

その考え方は、あなたが作りたいものに特に適している基盤を持つことです。Graham氏はこう述べています。「例えば、私が作っているゲームのタイプがこのローグライクスタイルのゲームであると言えます。だから、このフレームワークを使用して、その上に必要なシステムを構築していきます。その結果、ローグライクスを比較的簡単に作成できるようになる可能性があります。」 しかし、エンジン構築プロセスと開発は重なるべきであり、彼は「2年間エンジンを構築することから始めようと言っているのではありません。代わりに、独自のテクノロジーを構築します。あなたのゲームを作成し、必要に応じて情報を取り出します」と提案しています。

相互に接続されたフレームワークを使用する際、Graham氏は実際に何を意味するかの例を示しました-OS、レンダリング、音声、入力にSDLを使用するなど(SFMLもうまく機能します)、次に物理学にはBox2D、レベル編集にはTiled、XMLロードにはTinyxml、そしてSol/Lua。彼は、これらすべてのフレームワークが調和して機能することで、あなたが完全に制御し、スリムなゲームエンジンのより深い理解を持つことができると述べました。

彼が挙げた欠点の1つは、この種のフレームワークを使用することはしばしばC++の知識が必要であると述べており、「実際には誰かにC++を書かせる必要があると言っているわけではありませんが、おそらく低レベルの知識や理解が必要である可能性があります。」と述べています。しかし、これにより、トラブルシューティングプロセスが容易になり、問題を特定して修正することができます。これは、UnrealやUnityエンジンから発生する潜在的なエラーメッセージの波をふるい分ける必要がなくなります。

さまざまなエンジンソリューションを軸上に示すチャート

自前のテクノロジーではライセンス料金の心配はないが、Graham氏は、もちろん、自分自身のテクノロジーを構築することには時間がかかるため、より高い前払いコストがかかることを認めています。続けている質問では、UnrealやUnityのようなものを選択することが大型ゲームにとって最善の選択肢であると認識しており、その例としてCyberpunk 2077を挙げています。 そのゲームはCD Projekt RedのREDengine上に構築されており、「デザイナーたちは動くターゲット上で作業していました。エンジンはデザイナーがコンテンツを作成しようとしている間に連続的に構築されていたため、それは彼らにうまくいきませんでした。」

Graham氏が指摘したもう1つの要素は、「自動的な知識」で、プロジェクトに他の人を巻き込むようになるときに重要です。あなたは本質的に、より著名なゲームエンジンの他の開発者が持っている機関知識を放棄することになり、つまり、あなた自身の文書化を行い、前述のフレームワークを使用する際には、少なくとも基本レベルでC++を知っている人々が必要です。

UnrealとUnityがどれほど普及しているかにもかかわらず、Graham氏は、Stardew Valley、Bastion、Darkest Dungeon、Shovel Knight、Into the Breachなどのゲームが自前のテクノロジーに基づいて構築されていることを指摘しました。 Graham氏は、自分自身のテクノロジーを構築することは、依然として作成したいゲームの種類に依存すると繰り返しました。

Graham氏が最後に述べたのは、独立系ゲームが技術革新で特に実験的であることであり、「Epicは独自の技術革新を行い、Unityも独自の技術革新を行っていますが、彼らは誰にでもとって必要なものでなければなりません。彼らは大きくそれほど逸れることができません。」と述べました。

彼は締めくくりとして、「現在、非常に興味深い独立系ゲームがいくつか存在しており、いくつかの興味深い技術革新を行っています...独自のテクノロジーを構築すると、本当にクレイジーなことを行うことができるようになります。それが我々が欠いているものです。」と結論付けました。

Game DeveloperとGame Developers Conferenceは、Informa Techの傘下の姉妹組織です。