Godot Engine(ゴドーエンジン)は、オープンソースで無料のゲームエンジンで、2Dおよび3Dゲームの開発に対応しています。特に軽量で柔軟性があり、クロスプラットフォーム開発が可能です。Mono版は、C#スクリプトを使用して開発できるGodotのバージョンです。
以下は Godot Engine(Mono / C#)の概要 です:
目次
🔧 Godot Engine(Mono版)とは?
- Mono統合:Godotに.NETランタイム(Mono)を統合したもので、C#(.NET言語)を使ってスクリプトを書くことが可能。
- 標準Godot(GDScript)との違い:GDScriptの代わりにC#が使えること以外は、基本的に機能は同じ。
🎯 主な特徴
✅ C#スクリプト対応(Mono)
- Unityに近いC#の書き方ができるため、Unity経験者には特に親しみやすい。
- 強力な型システム、LINQ、タスクベースの非同期処理など、C#の機能が活用可能。
✅ クロスプラットフォーム開発
- Windows / macOS / Linux / Android / iOS / Web(HTML5)向けにビルド可能。
✅ フルオープンソース(MITライセンス)
- 商用利用も自由。ロイヤリティ不要。
- エンジン自体のカスタマイズも可能。
✅ ビジュアルエディタ
- シーンベースのエディタ。ノード(Node)システムにより、オブジェクトの構成がわかりやすい。
- C#と連携して、UIやゲームロジックを簡単に構築できる。
📦 開発の流れ(C# Mono版)
- Godot(Mono版)をダウンロード
- https://godotengine.org/download にて「.NET」版を選択。
- プロジェクトを作成
.csproj
ファイルが自動生成され、Visual StudioやRiderで編集可能。
- C#スクリプトを作成
.cs
ファイルをGodot内で作成可能。Node
を継承してスクリプトを構成。
using Godot; using System; public class Player : KinematicBody2D { public int Speed = 200; public override void _Process(float delta) { Vector2 velocity = new Vector2(); if (Input.IsActionPressed("ui_right")) velocity.x += 1; if (Input.IsActionPressed("ui_left")) velocity.x -= 1; MoveAndSlide(velocity.Normalized() * Speed); } }
- ビルドと実行
- Monoランタイムがビルド時にC#をコンパイル。
⚠ 注意点
- Mono版のサイズは標準版よりやや大きく、初回セットアップに時間がかかる。
- プラットフォームによってはMono対応が制限される場合がある(例:WebビルドはGDScriptのみなど)。
- GDScriptに比べて起動時間や再コンパイルが若干遅い傾向がある。
💡 こんな人にオススメ
- Unity経験者でGodotに移行したい人
- C#の型安全や機能を使いたい人
- オープンソースのエンジンで高度な制御をしたい人
もっと具体的に「C#で何ができるか」や「GDScriptとの比較」などを知りたい場合は、気軽に聞いてください!