機能一覧

このページでは、Godotが現在サポートしているすべての機能をリストアップすることを目的としています。

注釈

このページでは、Godot の現在の安定版でサポートされている機能の一覧を示します。これらの機能のいくつかは、 バージョン 3.x では利用できません。

プラットフォーム

参考

ハードウェアおよびソフトウェアのバージョン要件に関する情報は、 動作環境 を参照してください。

エディタとエクスポートしたプロジェクトの両方を実行可能:

  • Windows (x86, ARM, 64ビットと32ビット)。

  • macOS (x86, ARM 64ビットのみ).

  • Linux (x86とARM, 64ビットと32ビット)。

    • 古い十分なベースのディストリビューションでコンパイルされた場合、バイナリは静的にリンクされ様々なディストリビューションで実行できます。

    • 公式のバイナリは Godot Engine buildroot を使用してコンパイルされます。これは一般的なLinuxディストリビューションで動作可能なバイナリです。

  • Android (エディターは実験的)。

  • Webブラウザ 4.0では実験的です。HTML5をターゲットにする場合は、代わりにGodot 3.xを使うことが推奨されます。

エクスポートされたプロジェクトの実行:

Godotは可能な限りプラットフォームに依存しないことを目指しており、比較的簡単に 新しいプラットフォームに移植 することができます。

注釈

Godot 4 を使用して書かれた C# のプロジェクトは、Web プラットフォームにエクスポートできません。 WebプラットフォームでC#を使用するには、代わりにGodot 3の使用を検討してください。 Android および iOS プラットフォームのサポートは、Godot 4.2 で利用できますが実験的であり、 some limitations apply が適用されます。

エディタ

機能:

  • シーンツリー エディタ。

  • 内蔵スクリプトエディタ。

  • Visual Studio Code や Vim などの外部スクリプトエディタに対応。

  • GDScriptデバッガー

    • スレッドでのデバッグのサポートは4.2から利用できます。

  • レンダリングパイプラインの各ステップのCPUとGPUの時間を示すビジュアルプロファイラー。

  • カスタムパフォーマンスモニター を含むパフォーマンスモニターツール。

  • 実行時スクリプト再読み込み。

  • 実行時シーン編集。

    • 変更はエディタに反映され、実行プロジェクトを閉じた後も保存されます。

  • リモート インスペクタ。

    • 変更内容はエディタに反映されず、実行中のプロジェクトを閉じた後は保持されません。

  • 実行時カメラ複製。

    • エディタ内のカメラを移動し、実行プロジェクトで結果を確認してください。

  • 内蔵かつオフラインで読めるクラスリファレンスドキュメント。

  • コミュニティによって翻訳された数十の言語にてエディタを使用できます。

プラグイン:

レンダリング

Godot 4には3つのレンダラーが含まれています。

  • Forward+ 。デスクトッププラットフォーム専用の最も高度なレンダラー。デスクトッププラットフォームではデフォルトで使用されます。このレンダラーは、レンダリングドライバーとして VulkanDirect3D 12 、または Metal を使用し、 RenderingDevice バックエンドを使用します。

  • モバイル 。機能は少ないが、シンプルなシーンをより速くレンダリングします。モバイルおよびデスクトッププラットフォームに適しています。モバイルプラットフォームではデフォルトで使用されます。このレンダラーは、レンダリングドライバーとして VulkanDirect3D 12 、または Metal を使用し、 RenderingDevice バックエンドを使用します。

  • 互換性 (GL互換 と呼ばれることもあります)。最も低機能なレンダラーで、ローエンドのデスクトップおよびモバイル プラットフォームに適しています。Web プラットフォームではデフォルトで使用されます。このレンダラーはレンダリングドライバーとして OpenGL を使用します。

ハードウェアおよびソフトウェアのバージョン要件に関する情報は Renderers を参照してください。

2Dグラフィックス

  • スプライト、ポリゴン、ラインのレンダリング。

    • Polygon2DLine2D のような線やポリゴンを描くための高レベルなツールのテクスチャリングへの対応。

  • アニメーションするスプライトを作るのに役立つAnimatedSprite2D。

  • 視差レイヤー。

    • エディタでのプレビューを含む疑似3Dサポート。

  • 法線マップとスペキュラマップによる 2Dライティング

    • 点(全方位(omni)/スポット(spot))と指向性(Directional)の2Dライト。

    • ハードシャドウやソフトシャドウ(ライトごとに調整できます)。

    • カスタムシェーダーは、 LightOccluder2D ノードに基づいた 2D シーンの実時間 SDF 表現にアクセスできます。これは、2D グローバル照明を含む 2D 照明効果を向上させるために使用できます。

  • ビットマップを用いた Font レンダリング、FreeType またはマルチチャネル署名された距離フィールド (MSDF) を用いたラスタライズ。

    • ビットマップフォントは、BMFontのようなツールを使ってエクスポートすることも、画像からインポートすることも可能 (固定幅フォントのみ)。

    • ダイナミックフォントは、モノクロフォントと色付きフォント (例えば絵文字用のもの) をサポート。対応形式は TTF と OTF と WOFF1 と WOFF2 です。

    • ダイナミックフォントは、幅と色を調整可能なオプションのフォントアウトラインをサポート。

    • 動的フォントは、 リガチャを含む可変フォントと OpenType の機能をサポートしています。

    • 動的フォントは、フォントファイルに太字とイタリック体についてのスタイルがない場合に、そのシミュレートに対応しています。

    • ダイナミックフォントは、高解像度でもフォントをシャープに保つオーバーサンプリングをサポート。

    • 動的フォントは、小サイズでの文字表示を鮮明化するためのサブピクセル単位での位置指定をサポートしています。

    • 動的フォントは、小サイズでの文字表示を鮮明化するためのLCDサブピクセル最適化をサポートしています。

    • 符号付きディスタンスフィールドフォントは、再ラスタライズを必要とせず、どの解像度でも拡大縮小が可能です。マルチチャンネルの使用により、SDFフォントは、モノクロSDFフォントと比較して、より低いサイズにスケールダウンすることができます。

  • GPUベースの パーティクルカスタムパーティクルシェーダー をサポート。

  • CPUベースのパーティクル。

  • オプション 2D HDRレンダリング を使用すると、グロー機能が向上します。

2Dツール

  • TileMaps は2Dタイルベースのレベルデザインです。

  • 2Dカメラは、スムージングとドラッグマージンを内蔵。

  • 2D空間で経路を表現する Path2D ノード。

    • エディタ内で描画したり、手続き的に生成が可能。

    • ノードを Path2D に追従させるためのノードである PathFollow2D。

  • 2Dジオメトリヘルパークラス

2D物理演算

物理ボディ:

  • 静的ボディ。

  • アニメーション可能なボディ (ドアやプラットフォームなど、スクリプトまたはアニメーションによってのみ動くオブジェクト用)。

  • リジッドボディ。

  • キャラクタボディ。

  • ジョイント。

  • 出入りするボディを検出するための Area。

衝突検出:

  • 組み込みシェイプ: ライン、ボックス、円、カプセル、ワールド境界 (無限平面)。

  • 衝突ポリゴン (手動で描いたり、エディタ内でスプライトから生成可能)。

3Dグラフィックス

  • sRGBによるHDRレンダリング。

  • 透視投影、平行投影、視錐台オフセットカメラ。

  • Forward+ レンダラーを使用する場合、深度プリパスがオーバードローのコストを削減することによって、複雑なシーンのパフォーマンスを向上させます。

  • Forward+ および Mobile でサポートされているGPUの Variable rate shading

** 物理ベースレンダリング (内蔵のマテリアル機能):**

  • ディズニーPBRモデルに準拠。

  • Burley、Lambert、Lambert Wrap (half-Lambert) 、Toonの拡散シェーディングモードに対応。

  • Schlick-GGX、Toon、Disabled Specular Shading Modeをサポート。

  • ORMテクスチャに対応するラフネスメタリック用ワークフローを使用。

  • 水平スペキュラオクルージョン (フィラメントモデル) を使用したマテリアルの外観の改善。

  • 法線マップ。

  • Parallax / relief マッピングは距離に応じて自動的に詳細レベルを設定します。

  • アルベドマップと法線マップの詳細マッピング。

  • 表面下散乱 (Sub-surface scattering)、および透過率 (transmittance)。

  • スクリーン空間の屈折 (マテリアルの粗さをサポート。ぼやけた屈折が発生します)。

  • 近接フェード (ソフトパーティクル)。

  • 距離フェードはアルファブレンディング、もしくはディザリングを使用して透明パイプラインを回避可能。

  • ディザリングは、ピクセル単位またはオブジェクト単位で決定可能。

リアルタイム照明:

  • 指向性ライト (太陽 / 月)。1 シーンにつき 4 個まで。

  • 全方位ライト。

  • コーンの角度および減衰量を調整できるスポットライト。

  • 鏡面光、間接光、ボリューメトリックフォグのエネルギーは、ライトごとに調整可能。

  • 疑似エリアライトの "サイズ" を調整可能 (影もぼやけます)。

  • オプションの距離フェードシステムは、遠くにある光源とそれによる影をフェードさせ、パフォーマンスを向上できます。

  • Forward+ レンダラー (デスクトップのデフォルト) を使用する場合、ライトはクラスター化された前方最適化でレンダリングされ、個々のコストが削減されます。クラスタ化されたレンダリングでは、メッシュで使用できるライトの数の制限も解除されます。

  • Mobile レンダラーを使用する場合、メッシュリソースごとに最大 8 つのオムニライトと 8 つのスポットライトを表示できます。ベイクしたライティングは、必要に応じてこの制限を克服するために使用できます。

シャドウマッピング:

  • DirectionLight: 直交 (最速)、PSSM 2分割および4分割。分割間におけるブレンドに対応しています。

  • OmniLight: デュアル パラボロイド (高速) またはキューブマップ (低速だがより正確)。パノラマの形でカラープロジェクターテクスチャに対応。

  • スポットライト: 単一テクスチャ。色付き投影テクスチャに対応。

  • シャドウ法線オフセットバイアスとシャドウパンケーキは、目に見えるシャドウアクネとピーターパンの量を減らします。

  • PCSS に似たシャドウブラーで、ライトのサイズとシャドウが投影されるサーフェスからの距離に基づいています。

  • ライトごとに調節可能なシャドウブラー。

間接照明によるグローバルイルミネーション:

  • ベイク済みライトマップ (高速ですが、実行時に更新することはできません)。

    • ベイクは間接照明のみ、または直接照明と間接照明の両方をサポート。ベイクモードは、ライトごとに調整して、ハイブリッドライトベーキングが可能。

    • 自動および手動で配置されたプローブによる、動的オブジェクトのライティングが可能。

    • オプションで、球面調和関数に基づく指向性ライティングと粗い反射をサポートします。

    • ライトマップはコンピュートシェーダーを利用してGPUでベイクされます (CPUライトマッピングよりも高速です)。ベイクはエクスポートされたプロジェクトではなく、エディタ内でのみ実行できます。

    • GPUベースの ノイズ除去 (denoising) (JNLMを使用)、またはCPU/GPUベースのノイズ除去 (OIDNを使用) をサポートします。

  • ボクセルベースのGIプローブ。動的ライト*および*動的オクルーダーをサポートし、反射もサポートします。エディターまたは実行時 (エクスポートされたプロジェクトからを含む) に実行できる高速ベイク処理手順が必要です。

  • Signed-distance field GI 大規模なオープンワールド用に設計されています。動的ライトをサポートしますが、動的オクルーダーはサポートしません。反射をサポートします。ベイク処理は必要ありません。

  • Screen-space indirect lighting (SSIL) を半分または完全な解像度で実行します。完全にリアルタイムで、あらゆる種類の発光光源 (デカールを含む) をサポートします。

  • VoxelGIとSDFGIは遅延パスを使用してGIを半分の解像度でレンダリングし、パフォーマンスを向上させます (機能的なMSAAサポートは維持されます) 。

反射:

  • ボクセルベースの反射 (GIプローブ使用時) とSDFベースの反射 (符号付き距離フィールドGI使用時) 。ボクセルベースの反射は透明なサーフェスに表示され、SDFベースの粗い反射は透明なサーフェスに表示されます。

  • ReflectionProbe を使用した高速ベイクド反射、または低速リアルタイム反射。オプションで視差補正を有効にすることができます。

  • マテリアルの粗さをサポートするスクリーンスペース反射。

  • 反射技術は、高い精度とスケーラビリティを共に混在させることができます。

  • Forward+ レンダラー (デスクトップのデフォルト) を使用する場合、リフレクションプローブは、個々のコストを削減するために、クラスター化された前方最適化を使用してレンダリングされます。クラスター化されたレンダリングでは、メッシュで使用できるリフレクションプローブの数の制限も解除されます。

  • Mobile レンダラーを使用する場合、メッシュリソースごとに最大 8 つの反射プローブを表示できます。互換性レンダラーを使用する場合、メッシュ リソースごとに最大 2 つの反射プローブを表示できます。

デカール:

  • アルベド、エミッシブ、 ORM 、法線マッピングをサポートします。

  • テクスチャチャネルは、通常/ORMのみのデカールをサポートし、下にあるマテリアルの上にスムーズにオーバーレイされます。

  • 入射角に応じてデカールをフェードする標準フェードのサポート。

  • 実行時のメッシュ生成に依存しません。つまりデカールがフレームごとに移動する場合でも、パフォーマンスの低下を招くことなく、複雑なスキン メッシュでデカールを使用できます。

  • ニアレスト、バイリニア、トリリニア、または異方性のフィルタリング (大局的に調整される)。

  • オプションの距離フェードシステムは、遠くにあるデカールをフェードさせ、パフォーマンスを向上できます。

  • Forward+ レンダラー (デスクトップのデフォルト) を使用する場合、デカールは個々のコストを削減するために、クラスター化された前方最適化を使用してレンダリングされます。またクラスター化されたレンダリングでは、メッシュで使用できるデカールの数の制限も解除されます。

  • Mobile レンダラーを使用する場合、メッシュリソースごとに最大8個のデカールを表示できます。

空:

  • パノラマ空 (HDRIを使用)。

  • シーン内のDirectionalLightsに反応する手続き型の空と物理ベースの空。

  • アニメーション化可能な custom sky shaders のサポート。

  • アンビエントライトとスペキュラライトに使用される放射輝度マップは、選択した品質設定に応じてリアルタイムで更新できます。

霧:

  • 指数的距離フォグ。

  • 指数的高さフォグ。

  • 空の色に基づく自動の深度フォグ色に対応 (空気遠近法)。

  • 霧の中での太陽光の散乱をサポート。

  • 空に影響するフォグレンダリングの量を制御できるようになりました。従来のフォグとボリュームフォグを個別に制御できます。

  • 特定のマテリアルでフォグをマスクできるようになりました。

フォグボリューム:

  • グローバル volumetric fog ライトとシャドウに反応します。

  • ボリュームフォグでは、VoxelGIまたはSDFGIを使用する場合に間接光を考慮できます。

  • 特定の領域にフォグを追加する (または特定の領域からフォグを削除する) ために配置できるフォグボリュームノード。サポートされている図形には、ボックス、楕円、円錐、円柱、および3Dテクスチャベースの密度マップが含まれます。

  • 各フォグボリュームは独自のカスタムシェーダを持つことができます。

  • 従来のフォグと併用できます。

パーティクル:

  • サブエミッタ (2D+3D)、トレイル (2D+3D)、アトラクタ (3Dのみ)、およびコリジョン (2D+3D) をサポートするGPUベースのパーティクル。

    • 使用可能な3Dパーティクル・アトラクタの形状: ボックス、球体、および3Dベクトルフィールド。

    • 使用可能な3Dパーティクルの衝突の形状: 箱型、球体、ベイク済みの符号付距離フィールド、およびリアルタイム・ハイトマップ (オープンワールドの天候効果に最適)。

    • 2Dパーティクル・コリジョンは、シーン内の LightOccluder2D ノードに基づいて、リアルタイムで生成された符号付き距離フィールドを使用して処理されます。

    • トレイルは、組み込みのリボン形トレイルやチューブ形トレイルメッシュ、またはスケルトンを含むカスタムメッシュを使用できます。

    • 手動放出ができるカスタムのパーティクルシェーダーをサポート。

  • CPUベースのパーティクル。

ポストプロセッシング:

  • トーンマッピング (Linear、Reinhard、Filmic、ACES)。

  • ビューポートの明るさに基づく自動露出調節(および手動での露出オーバーライド)。

  • 調節可能なボケのシミュレーション (箱形、六角形、円形) 付きの、近景と遠景の被写界深度。

  • 半分または完全解像度によるスクリーン空間アンビエントオクルージョン (SSAO)。

  • オプションのバイキュービック アップスケーリング付きのグロー / ブルームと、複数のブレンドモード: スクリーン、ソフトライト、追加、置換、ミックス。

  • グローには色付きの汚れマップテクスチャを適用でき、レンズの汚れ効果として使えます。

  • グローは スクリーン スペースのブラー効果 として使用できます。

  • 1次元の諧調か3D LUTテクスチャによる色補正。

  • スペキュラ・エイリアシングの影響を低減するためのラフネス・リミッタ。

  • 明るさ、コントラスト、彩度の調整。

テクスチャ フィルタリング:

  • ニアレスト、バイリニア、トリリニア、または異方性のフィルタリング。

  • フィルタリング機能は、テクスチャ単位ではなく使用されるごとに定義されます。

テクスチャ圧縮:

  • Basis Universal (遅いものの、より小さいファイルになる)。

  • 高品質圧縮のためのBPTC (macOSには未対応)。

  • ETC2 (macOSには未対応)。

  • S3TC (モバイル / Webプラットフォームでは非対応)。

アンチエイリアシング:

  • テンポラル アンチエイリアシング (TAA)。

  • AMD FidelityFX Super Resolution 2.2 antialiasing (FSR2) 。これは、ネイティブの解像度で高品質な時間アンチエイリアシングの形式として使用できます。

  • 2D antialiasing および 3D antialiasing へのマルチサンプル・アンチエイリアシング (MSAA)。

  • 高速近似アンチエイリアス(FXAA)。

  • スーパーサンプル・アンチエイリアシング (SSAA) を用いたバイリニア3Dスケーリングと1.0を超える3D解像度スケール。

  • アルファ・アンチエイリアシング、MSAAアルファをカバレッジに変換、およびマテリアルごとのアルファハッシュ。

解像度スケーリング:

  • 2Dレンダリングは元のスケールのまま、 3Dを低解像度でレンダリング する機能をサポートしています。この機能は、低スペックのシステムでパフォーマンスを向上させたり、高スペックのシステムでビジュアルを改善したりするために使用できます。

  • 解像度スケーリングでは、バイリニアフィルタリング、AMDのFidelityFX Super Resolution 1.0 (FSR1)、またはAMDのFidelityFX Super Resolution 2.2 (FSR2) が使用されます。

  • テクスチャのミップマップLODバイアスは、低解像度スケールでの品質向上のために自動的に調整されます。また、手動でオフセットを変更することも可能です。

これらエフェクトのほとんどは、より良いパフォーマンス、もしくはクオリティー改善のために調整できます。これは Godotをオフラインレンダリングで使用する 際に役立ちます。

3Dツール

  • ビルトインのメッシュ: 立方体・円柱・円錐・(半)球・角柱・平面・四角形・トーラス・リボン・チューブ。

  • GridMaps は、3Dタイルベースのレベルデザインに使用されす。

  • 空間領域構成法(CSG) (プロトタイピング用)。

  • 手続き型ジオメトリ生成 用ツール。

  • 3D空間で経路を表現する Path3D ノード。

    • エディタ内で描画したり、手続き的に生成が可能。

    • ノードを Path3D に追従させるためのノードである PathFollow3D。

  • 3Dジオメトリ用ヘルパークラス

  • エディタとエクスポートされたランタイム上で、現在のシーンをglTF2.0ファイルへのエクスポートすることができます。

3D物理

物理ボディ:

  • 静的ボディ。

  • アニメーション可能なボディ (ドアやプラットフォームなど、スクリプトまたはアニメーションによってのみ動くオブジェクト用)。

  • リジッドボディ。

  • キャラクタボディ。

  • 乗り物ボディ (シミュレーションではなく、アーケード物理用)。

  • ジョイント。

  • ソフトボディ。

  • ラグドール。

  • 出入りするボディを検出するための Area。

衝突検出:

  • ビルトインのシェイプ: 直方体・球・カプセル・円柱・ワールド境界 (無限平面)。

  • エディタから任意のメッシュの形状の三角コリジョンが生成可能。

  • エディタから任意のメッシュの形状の、一つまたは複数の凸型コリジョンが生成可能。

シェーダー

  • 2D: 頂点、フラグメント、ライト用のカスタムのシェーダ。

  • 3D: 頂点、フラグメント、ライト、天球用のカスタムのシェーダ。

  • テキストベースのシェーダは GLSLにインスパイアされたシェーダ言語を使っています。

  • ビジュアルシェーダーエディタ。

    • ビジュアルシェーダープラグイン。

スクリプト

全般:

  • スクリプトがノードを拡張する、オブジェクト指向デザインパターン。

  • スクリプト間で通信するためのシグナルとグループ。

  • 異なる言語でのスクリプティングに対応。

  • ベクトルやトランスフォームといった、多くの2Dや3D、4Dの線形代数データ型。

GDScript:

C#:

  • ファイルサイズと依存関係を抑えるために、異なるバイナリでパッケージ化されています。

  • .NET8 以上に対応。

    • C# 12.0 構文と機能を完全サポート。

  • Windows、Linux、macOS をサポートします。Godot 4.2 以降では、Android と iOS の実験的なサポートも利用できます。

    • iOSプラットフォームでは、一部のアーキテクチャのみ対応しています: arm64

    • 現在、Webプラットフォームではサポートされていません。そのプラットフォームでC#を使用する場合は、代わりにGodot 3を検討してください。

  • IDE の機能を利用できるため、外部エディタの使用をおすすめします。

GDエクステンション (C, C++, Rust, D, ...):

  • 必要がある場合、パフォーマンス向上やサードパーティ機能の統合のためのネイティブライブラリをリンクすることができます。

    • パフォーマンスが十分な場合は、ゲームロジックの記述には GDScript または C# を使用することをおすすめします。

  • 公式のGDExtensionは`C <https://github.com/godotengine/godot-headers>`__ および C++ 用です。

    • ビルドシステムや言語機能はなんでも使うことができます。

  • コミュニティによって提供される、積極的に開発されているGDExtension バインディングには DSwift 、および Rust があります。(これらのバインディングの一部は実験的なものであり、本番環境では使用できない可能性があります)。

オーディオ

機能:

  • モノラル、ステレオ、5.1チャンネル、そして7.1チャンネルの出力。

  • 2Dおよび3Dでの非位置的および位置的再生。

    • 2Dと3Dにおけるオプションのドップラー効果。

  • 再ルーティング可能な オーディオバス と数十種類のエフェクトをサポートしています。

  • ポリフォニー (AudioStreamPlayerノードから複数の音声を同時に再生する機能) をサポートしています。

  • ランダムボリュームとピッチをサポート。

  • リアルタイムピッチでスケーリングするのをサポート。

  • ランダム、または、連続的なサンプル選択や、ランダムサンプル選択時に重複を防止します。

  • カメラとは異なる位置からリスニングするためのListener2DとListener3Dノード。

  • プロシージャルオーディオ生成 のサポート。

  • マイクで録音するためのオーディオ入力。

  • MIDI 入力。

    • MIDI出力にはまだ対応していません。

** 使用API :**

  • Windows: WASAPI。

  • macOS: CoreAudio。

  • Linux: PulseAudio、または ALSA。

インポート

フォーマット:

  • 画像: イメージのインポート を参照。

  • オーディオ:

    • オプションの IMA-ADPCM 圧縮を使用した WAV。

    • Ogg Vorbis。

    • MP3.

  • 3D シーン: 3Dシーンのインポートを参照.

    • glTF 2.0 (推奨)

    • .blend 拡張子ファイル (内部的にブレンダーの glTF 出力機能が使用されます)。

    • FBX 形式のファイル (内部的に FBX2glTF が使用されます)。

    • Collada (.dae 拡張子のファイル)。

    • Wavefront OBJ (静的シーンのみ、メッシュとして直接ロードするか3Dシーンとしてインポート可能)。

  • エクスポートされたプロジェクトも含め、glTF2.0シーンの実行時ロードに対応。

  • 3D メッシュはMikktspaceを使用してインポート時に接線を生成し、Blenderなどの他の 3D アプリケーションとの一貫性を確保します。

入力

  • ハードコードされた入力イベントまたは再マップ可能な入力アクションを使用した 入力マッピングシステム

    • 軸の値は、設定可能なデッドゾーンを使用して 2 つの異なるアクションにマップできます。

    • キーボードとゲームパッドの両方をサポートするために同じコードを使います。

  • キーボード入力。

    • キーは、キーボード レイアウトに依存しない "物理" モードでマップできます。

  • マウス入力。

    • マウスカーソルは、ウィンドウ内で表示、非表示、キャプチャ、または閉じ込めることができます。

    • キャプチャすると、WindowsやLinuxでは未加工の入力値が使用され、OSのマウスアクセラレーション設定を回避することができます。

  • ゲームパッド入力 (最大8台同時使用コントローラ)。

  • 筆圧対応のペン/タブレット入力。

ネットワーク

  • StreamPeerTCPServer を使用した低レベル TCP ネットワーキング。

  • PacketPeerUDPServer を使用した低レベル UDP ネットワーキング。

  • HTTPClient を使用した低レベルの HTTP リクエスト。

  • HTTPRequest を使用した高レベルの HTTP リクエスト。

    • バンドルされた証明書を使用して、すぐに使用できるHTTPSをサポートします。

  • UDP および ENet を使う 高レベルのマルチプレイヤー API。

    • リモートプロシージャコール (RPC) を使用した自動レプリケーション。

    • 信頼性の低い転送も、信頼性が高く順番が保証された転送もサポートします。

  • すべてのプラットフォームで利用可能な WebSocket クライアントおよびサーバー。

  • すべてのプラットフォームで利用可能な WebRTC クライアントおよびサーバー。

  • サーバーを NAT の背後でホストする際にポートフォワーディングを不要にする UPnP に対応。

国際化

  • 絵文字を含むUnicodeに完全対応。

  • CSV または gettext を用いてローカライズ文字列を格納します。

    • エディタからの gettext POT および PO ファイルの生成に対応。

  • プロジェクト内の GUI 要素中で自動的にローカライズされた文字列を使うか、 tr() 関数を使ってください。

  • gettext 翻訳を使用する際、複数形対応およびコンテキスト指定翻訳に対応。

  • 双方向組版 、テキストシェーピング、および OpenType のローカライズ形式に対応。

  • 右から左に読むロケールのための UI 自動ミラーリング。

  • プロジェクトの国際化 (i18n) 対応のしやすさをテストするための疑似ローカライゼーションをサポート。

ウィンドウおよび OS の統合

  • 単一プロセス内で複数の独立したウィンドウ生成に対応。

  • プロジェクトが生成したウィンドウの移動、サイズ変更、最小化および最大化。

  • ウィンドウのタイトルおよびアイコンの変更。

  • 注意を求める (ほとんどのプラットフォームではタイトルバーが点滅します)。

  • 全画面表示モード。

    • Windows では alt-tab ショートカット使用時の高速化のため基本的にボーダーレスフルスクリーンを使用するが、入力遅延の軽減のためオプションで排他的フルスクリーンも選択可能。

  • ボーダーレスウィンドウ (全画面または非全画面)。

  • ウィンドウを常に最前面に保つ機能。

  • macOS でのグローバルメニュー統合。

  • ブロッキングまたはノンブロッキングでのコマンド実行 (同一プロジェクトの複数インスタンスの実行も含む)。

  • デフォルトまたはカスタムのプロトコルハンドラ (システムに登録されている場合) を使用してのファイルパスや URL のオープン。

  • カスタムのコマンドライン引数をパース。

  • 全ての Godot バイナリ (エディタおよびエクスポートされたプロジェクト) は、コマンドライン引数``--headless``で始めることで headlessサーバーとして扱えます。これにより GPU やディスプレイサーバー無しでエンジンを起動できます.

モバイル

  • Android および iOS でのアプリ内購入.

  • サードパーティモジュールを利用した広告に対応。

XR (ARおよびVR) に対応

  • 標準で OpenXRをサポート

    • Valve Index、Windows Mixed Reality ヘッドセット、Link 接続の Quest のような主要なデスクトップヘッドセットに対応。

  • プラグインを介して、OpenXRを採用する Androidベースのヘッドセット に対応。

    • Meta Quest 1/2/3/Pro、Pico 4、Magic Leap 2 及び Lynx R1 のような主要なスタンドアローンヘッドセットに対応。

  • XRプラグイン機構を介してその他のデバイスに対応。

  • XR アプリケーションに必要な共通機能が実装された高度なツールキットが多数使用可能。

GUI システム

Godot の GUI は、Godot でゲームを作るのに使用するのと同じ Control ノードを使って構築されています。エディタの UI はアドオンを使って簡単に様々な方法で拡張することができます。

ノード:

  • ボタン。

  • チェックボックス、チェックボタン、ラジオボタン。

  • LineEdit (一行)及び TextEdit (複数行)を使用したテキスト入力。TextEdit は行番号表示やシンタックスハイライトのようなコード編集機能にも対応。

  • PopupMenuOptionButton を使ったドロップダウンメニュー。

  • スクロールバー。

  • ラベル。

  • BBCodeでフォーマットされたテキスト用の RichTextLabel、アニメーションのカスタムエフェクトに対応。

  • ツリー (表の表現にも使えます)。

  • RGB モードと HSV モードを持つカラーピッカー。

  • Control は回転と拡大縮小が可能。

サイズ変更:

  • GUI 要素を特定のコーナー、エッジ、または中央に配置するためのアンカー。

  • 特定のルールに従って UI 要素を自動配置するコンテナ。

  • canvas_items または viewport ストレッチモードを使用して 複数の解像度 にスケールします。

  • アンカーと expand を使用して任意のアスペクト比をサポートするストレッチアスペクト。

テーマ:

  • 内蔵テーマエディタ。

    • 現在のエディタのテーマ設定に基づいて、テーマを生成します。

  • StyleBoxFlat を使用したプロシージャルなベクターベースのテーマ設定。

    • 丸みを帯びた/面取りされたコーナー、ドロップシャドウ、ボーダ毎の幅、アンチエイリアスをサポートします。

  • StyleBoxTexture を使用した、テクスチャベースのテーマ設定。

Godot はディストリビューションサイズが小さいため、Electron や Qt のようなフレームワークの代替としても適しています。

アニメーション

  • ダイレクトキネマティクスとインバースキネマティクス。

  • カスタマイズ可能な補間による、あらゆるプロパティのアニメーションに対応。

  • アニメーショントラックでのメソッド呼び出しに対応。

  • アニメーショントラックでのサウンド再生に対応。

  • アニメーションでのベジエ曲線に対応。

ファイルフォーマット

  • シーンやリソースは テキストベース またはバイナリ形式で保存可能。

    • テキストベースのフォーマットは人間が読むことができ、バージョン管理にも適しています。

    • バイナリ形式は、大きなシーンやリソースの保存・読み込みがより高速です。

  • FileAccess を使用した、テキストファイルやバイナリファイルの読み書き。

    • オプションで圧縮や暗号化が可能です。

  • JSON ファイルの読み書き。

  • ConfigFile を使用した、INIスタイルの設定ファイルの読み書き。

    • Vector2、Vector3、Color などを含む、あらゆる Godot データ型は (デ)シリアライズできます。

  • XMLParser を使用した、XMLファイルの読み込み。

  • エクスポートされたプロジェクトで、Godot のインポートシステムを通さずに 画像、音声/映像、フォント、ZIPアーカイブをロード及びセーブ

  • ゲームデータを PCK ファイル (高速シークに最適化されたカスタムフォーマット)、ZIP アーカイブ、またはシングルファイル配布用の実行ファイルに直接パック可能。

  • MOD や DLC に対応するため、エンジンにて読み込める 追加のPCKファイル をエクスポート可能。

その他

  • 動画再生 、Ogg Theora に標準で対応。

  • 動画作成モード を使用して、実行中のプロジェクトから同期された音声と完璧なフレームペーシングでビデオを録画します。

  • サーバーへの低レベルのアクセス 。 これにより、必要に応じてシーンツリーのオーバーヘッドを回避することができます。

  • Command line interface 自動化のためのコマンドラインインターフェイス。

    • 継続的インテグレーション (CI) のプラットフォームを利用したプロジェクトのエクスポートとデプロイ。

    • シェル補完スクリプト は、Bash、zsh、fish で利用可能。

    • すべてのプラットフォームで print_rich を使用して標準出力にカラーテキストを出力可能。

  • エンジンのバイナリに静的リンクされた C++ モジュール に対応。

  • C++17 で書かれたエンジンとエディタ。

    • GCC、Clang および MSVC を使用してコンパイル可能。MinGW にも対応。

    • パッケージャーにフレンドリー。ほとんどの場合、Godot が提供するライブラリではなく、システムライブラリを使用することができます。ビルドシステムは何もダウンロードしません。ビルドは完璧な再現性があります。

  • ライセンスは、寛容な MIT ライセンスです。

参考

Godot proposals repository には、コミュニティから求められている今後の Godot リリースで実装される可能性のある機能が掲載されています。