Godot Engine Advent Calendar 2025 3日目の記事です。
✋Godotとは?
唐突ですが、まずGodotについて本当にさらっと紹介します。
- オープンソース(MITライセンス)のゲームエンジン
- 最近モテ期到来の予感がある
- 個人的な推しポイントはすっごく軽いこと(容量、挙動の両方)です
- Unity、UEとの比較をはじめ、詳しい解説は👇など色々なところで書かれているので割愛
✋本題の前ふり
近頃ゲームエンジン産業活用界隈が盛り上がっていますね!
「Godot ノンゲーム」とか「Godot 産業利用」とか日々検索して過ごす者として、CGWorldの10月号で”産業デジタルツイン”の特集が組まれたのも衝撃でした。(ここには”まだ”Godotの実績は出てきていませんが)
さて、こういった文脈をカバーする言葉として、「ゲームエンジン産業活用」「ノンゲーム分野」「3Dデジタルツイン」とか色々ありますが、ノンゲームが広義な気がするので、とりあえず今回はそっちで呼びます。
#ノンゲーム
ちなみに、ここで言う「ノンゲーム用途」というのは、ざっくりこんなようなキーワードがヒットするようなジャンルを想定しています。
- リアルタイム3D可視化
- デジタルツイン
- ゲームエンジン産業利用
- フィジカルコンピューティング
- XR
- sim2real
#産業用
ついでに、ここでいう「産業用」というのは、物理的にものを作ったり動かしたりする系の業界を指すこととします。
特定のゲームエンジンが産業分野で流行るために必要な大きな要素のひとつが、産業分野で使いたいアセットの充実なんじゃないかと勝手に思っています。
そもそも産業用途でゲームエンジンを使いたい動機の多くが、リアルタイム3Dエンジンをフルスクラッチより手軽に使いたいことだと思うので、いろんな機能をフルスクラッチせず手軽に実装できる”アセット”は、その動機の大部分に応える仕組みなのではないかと。
✋ここからが本題
まあそんなこんなで、Godotをノンゲーム分野で使うときに便利なアセットは現時点でも色々あると思うんですが、Godotアセットライブラリにはお気に入り機能的なものがまだなくて、「前に見つけたよさげなアセットどれだっけ...?」となりがちなので、自分用のブックマークも兼ね、よく使う/おすすめ/気になるアセットをここにメモっていきます。
- 良いものを見つけたら随時更新していくつもり。
- 数が少ないのでジャンル分けはテキトーですが、増えてきたら整理するつもり。
- 乱筆なのもそのうち推敲するつもり。
通信系
MQTT Client
MQTT Client - Godot Asset Library
IoTでよく使われる「MQTT」という通信プロトコルを、Godotで手軽に使えるアセットです。
ソフトvsハードでオーバーヘッド少なく通信したい場合、MQTTはいちばん手軽&汎用的な手段だと思います。
UnityでMQTT触るのがチョット辛いのに対して、Godot自体が手軽、MQTTも手軽、このアセットも手軽という三方良しで、このアセットは僕がUnityからGodotに乗り換えた大きなきっかけのひとつです。
簡単な使い方を以前の記事にまとめているので、ハンズオンはぜひここから。
GDSerial
GdSerial - Godot Asset Library
Godotでシリアル通信を実現するRust製アセット。少し触った感触では、完成度が高そうな感じでした。 PythonのPyserialに似せたAPIなので、そっちを使ったことがあると特に使いやすいです。
シリアル通信ができるとハードウェアへのアクセスが一気に楽になるので、バーチャルと現実をつなぐ系のことに活用したい。 あとは、これをベースにFirmata(Arduino系のプロトコル)が移植できると面白そうだなと思っています。
カメラ系
Phantom Camera
Phantom Camera - Godot Asset Library
UnityのCinemachineみたいな、シネマティックなカメラワークを手軽に追加するアセットです。 「複数のオブジェクトが常に画面に収まるように&なめらかにカメラをうごかしたいな」みたいなことが、インスペクターをポチポチするだけで簡単に実装できます。
Fly Camera
Fly Camera - Godot Asset Library
シーンに置くだけで、WASD&マウスでフライ移動できるカメラを追加できます。
プロトタイプ中に、シーンを再生しつつ色々な場所を確認したいとき重宝しています。 似たようなアセットが他にもありそうですが、最初に見つけたのを親だと思って使っています。
欲を言えば、QEで垂直移動したい。
State Machine Third Person Controller
State Machine Third Person Controller - Godot Asset Library
アイコンがかわいい、機能も充実してそう。 CADモデルとか見るとき、3Dマウスの操作ってかなり習熟がいるけれど、サードパーソン操作は物心ついた頃から触っている人が多いだろうから、CAD+ゲーム感覚操作の可能性に密かに可能性を感じていたりします。
Little Camera Preview
Little Camera Preview - Godot Asset Library
Unityみたいに、PinP形式でカメラプレビューを置いておけるアセット。 これは地味にすごく必須機能。
状態管理系
gd-YAFSM(Finite State Machine)
gd-YAFSM(Finite State Machine) - Godot Asset Library
Unityみたいに状態遷移図としてビジュアルコードできるステートマシン
ノンゲーム分野でも,けっこうステートマシンを使いたいシーンって多いので、使いやすいのを探し求めています。
GUI系
GTML - Godot Text Markup Language
GTML - Godot Text Markup Language - Godot Asset Library
GUIをHTML+CSSで書けるというアセット、いやーそういうのが欲しかった!
労力をかけずに最低限の機能&整いのGUIが欲しい場面が多くて、これはそれをアレしてくれそう!
コードベースならチャッピーに最大限手伝ってもらえるしね。
Debug Draw 3D (4.3+)
Debug Draw 3D (4.3+) - Godot Asset Library
3Dで線とかプリミティブなワイヤーフレームを描画できるアセット。移動方向のベクトル表示とかに重宝しています。たまにめっちゃ必要になる時がある。
いまのところ以上。