1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Godot Engine を使ってみた

1
Posted at

はじめに

 突然ですが、普段ゲームを作っている皆さん(限定)、普段はどうやって作っていますか?多分大半の人はUnityかUEだと思います。便利だし記事も豊富だから当然ですね。私も普段はUnityでゲームを作っています。UEも偶に触ります。
 しかし、こいつらには致命的な弱点があります。動作が重いです。正直言ってデスクトップ前提ですし、UEに至ってはノーパソでやったらGPUがGARIGARI削られることになります、多分。ですが、ゲーム作りが好きな我々は、出先でもゲームを作れないとすごく困ることになります。リモートデスクトップとかもありますが、あれはあれで遅いです。ツクールなどのゲームエンジンもありますが、作れる作品が限定的ですし、エンジンでないDirextXやOpenGLを使うのもしんどいです。
 「それなりに自由度があって」、「軽いゲームエンジン」を探してみると、あるんですね、Godot Engineが。
 三文芝居な前置きはさておき、この記事では、最近個人開発や小規模開発で使われて出しているGodot Engineでゲームを作ったので、それを書いておきたいと思います。Unityなどの他のゲームエンジンとの違いにも触れていくつもりです。是非とも最後まで読んでいって下さい。

概要と準備

 まず、Godot(読み方はゴドー)について簡単にまとめておきます。以下のサイトを参考にさせていただきました。

 https://blog.esol.co.jp/embedded/godot_explanation

・クロスプラットフォームに対応したゲーム開発が可能な2D/3Dゲームエンジン
・MITライセンスのオープンソースソフトウェアであり、誰でも無料で使用可能
・ソフト自体が非常に小さく、軽量でサクサク動く
・言語はGDScript、C#、C++などに対応
・独自のシーンシステムが採用されている

 などが挙げられます。
 ということで、早速ダウンロードしていきます。

 https://godotengine.org/ja/

 容量が小さいのですぐに終わります。そして、すぐに触れます。

スクリーンショット 2026-06-23 103711.png

 画像ではすでにプロジェクトがありますが、最初は何もないので、「作成」からプロジェクトを作成しましょう。こちらも、時間はかかりません。

スクリーンショット 2026-06-23 104210.png

 このようにして、簡単にゲーム作りを始められます。

特徴と特長

 ここからゲームを作っていくんですが、さすがにその工程や様子を記事に書いていく訳にも行かないので、少し触ってみて感じたGodotの特徴や特長を、Unityなどにも触れつつ、まとめていきます。

1.オブジェクトの扱い方

 大体のゲームエンジンでは、操作するキャラクターやアイテムなどのオブジェクトは、対象となるシーンの中で作成して組み立てるのが普通ですが、Godotでは「そのオブジェクト」自体がシーンという扱いです。何を言っているか分からねーと思いますが、つまりは、シーンの中にシーンを配置してゲームを組み立てていくイメージです。

スクリーンショット 2026-06-23 105142.png

 例えば、この画像では、「game.tscn」や「title.tscn」は、皆さんの思い描いているシーンとほぼ同じものなんですが、「player.tscn」や「player_bullet.tscn」は所謂オブジェクトです。私個人としては、Unityのプレハブみたいなモノだと考えています。
 初見では間違いなく混乱する仕様、というか他のゲームエンジンに慣れている人ほど混乱する「非初見の初見殺し」ではありますが、ちゃんとフォルダを整理すれば、種類が少ない分、寧ろ楽になるかもしれないです。

2.スクリプトの書き方

 このゲームエンジンにもスクリプトはあります。

スクリーンショット 2026-06-23 110044.png

スクリーンショット 2026-06-23 110100.png

 この巻き物みたいなアイコンをクリックすることで、シーンに対応したスクリプトが作成できます。あとは、タブを切り替えて、コードを書いていくだけなんですが、Godotで採用されているGDScriptは、見ての通り独特です。正直C#使わせてくれとは思いました(実際使えますが)。どうやら、この言語の仕様はPythonをモチーフにしているようです。なので、学習コスト自体は低めです。私は、勉強も兼ねてGDCsriptで作業をして進めました。
 争いの元になるので、どの言語がいいとか、構文がいいとかは明言しませんが、GDScriptとGodotの親和性は高いので、できればGDScriptを使うのが良いです。

3.入力設定

 最近のゲームは、様々な入力デバイスに対応することが求められています。Unityでは、最近(?)、InputSystemが導入されたことで、手早く設定ができるようになりました。では、当のGodotはどうなのかというと、

スクリーンショット 2026-06-23 111335.png

 「インプットマップ」から、一瞬で登録ができます。ここに関しては、明確に長所だと感じました。違うデバイス同士、複数入力も大丈夫です。
 キーボード操作に執着せず、誰でも遊びやすいようにする上でも、重要な点ではあります。

4.その他

 他にも、画面サイズの設定や、プロジェクトの出力、2Dと3Dの扱い方など、他のゲームエンジンとは違う点が幾つかありました。逆に、全体的なUIとかはUnityに似ていると思います。

 総じて言えることとして、Godotは「本当に必要な機能を扱いやすくしてくれている」と思いました。悪く言えば、機能が少ないとはなりますが。

まとめ

 Godotを使ってみて、他のゲームエンジンと似通っている所もあれば、全然違う所もあると感じました。最初にも言った通り、Godotの最大の強みは「軽いこと」だと思っています。どこでも動かせるのは偉いです。オープンソースなので、権利的にも軽いですね。ただ、他のゲームエンジンと比べると、情報が少なかったり、プラグインが足りなかったり、知名度が微妙だったり、どうしても回避できない弱点も多いです。といっても、便利なツールであることは間違いないので、興味が湧いた人は、一回触ってみることをオススメします。

余談

 Godot、最近UnityRoomで公開できるようになりました。試しに作ってみたゲームがあるので、リンクを貼っておきます(何か問題あったら消します)。

 https://unityroom.com/games/uraomoteshooter

 記事の内容は逐次更新予定です。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?