なぜあなたはUnityでの開発が進まないのか?
ゲーム開発を個人で進めるにあたって、Unityを選んだものの思うように進まない…そんな悩みを抱えていませんか?。
Unityは強力なゲームエンジンですが、個人開発ではその設計思想が障害になることもあります。
Unityでの開発は「プラモデルを部品からつくる」ようなもの。
Unityは 、マンション建設のような
- 設計
- 素材(クラスなど)の作成
- 行程管理
- 建設(プログラミング)
といった、構造的計画的な開発に向いています。
つまり、しっかりと 設計図と手順書を作る ことが求められるのです。
これは、数十人単位の大人数での開発では有効なのですが、
個人で開発を進める場合は
「プラモデルを部品からつくる」
ような面倒な事が起こりやすくなります。
- Unityで使用されているC#が「静的型付け言語」 のため、プログラムの構造をしっかり決めておかないと、修正が難しくなる。
- クラス設計が重要で、一度作り始めた後で変更するのは大変。
- 多人数開発向けなので、一人で細かい調整を繰り返すのには向かない。
この様に、Unityの「事前の設計ありき」という思想が、柔軟な試行錯誤を阻害することがあります。
個人開発向けのゲームエンジン "Godot"
そんな中、個人開発者に注目されているのが Godot です。
Godotは 「粘土細工」 のような柔軟な開発スタイルを支えるゲームエンジンです。
Godotでの開発は「思いつくままに粘土細工をつくる」ようなもの。
GodotはPythonに似た、GDScriptと言う 「動的型付け言語」 を採用しており、試行錯誤しながら作り上げることが可能です。
- 思いついたアイデアをすぐ形にできる ので、初期段階の試行錯誤が楽。
- Dictionaryや配列では、異なる型の値を利用できる ため、必要なデータ構造(クラス設計)を後回しにしても開発が進められる。
- 後から型付けをすることも可能 なので、柔軟な開発をしつつ整合性を取ることもできる。
この中でも、Dictionaryや配列で異なる型が使用できるのは、柔軟な開発スタイルに非常に役立ちます。
var dict = { #Dictionary
"name": "キャラクタ名", #文字列
"script": [
"1行目のセリフ",
"2行目のセリフ"], #文字列の配列
"index": 1 #整数型
}
※↑の様な書き方が可能なので、データの集まりを、クラスの代わりに使用することができます。
Godotは、このように、柔軟な開発スタイルのため、複雑で大規模なプロジェクトを進める場合には工夫が必要になると思います。
しかし、個人開発では、開発者自身がプロジェクトの内容をすべて把握しているため、
これらのデメリットよりも、「柔軟に開発できる」メリットの方は、はるかに大きいです。
Unityでの開発に悩んでいる方は、”Godot”を、ぜひお試しください。
コメント