功能列表

本頁列出了目前 Godot 所支援的所有功能。

備註

本頁列出 Godot 當前穩定版本所支援的功能。其中部分功能 無法在 3.x 版本系列 中使用。

支援平台

也參考

請參閱 系統需求 來了解硬體與軟體版本的需求。

在編輯器與匯出的專案中均可執行:

  • Windows (x86 和 ARM, 64 位元與 32 位元)。

  • macOS ( x86 和 AR,僅支援 64位元)。

  • Linux (x86 和 ARM, 64 位元與 32 位元)。

    • 二進位檔使用靜態連結,並且若在一定舊的基礎發行版上編譯,則可在任意發行版上執行。

    • 官方二進制檔使用`Godot Engine buildroot <https://github.com/godotengine/buildroot>`_ 進行編譯,使其能夠相容於多數常見的 Linux 發行版。

  • Android(編輯器支援是實驗性的)。

  • Web 瀏覽器 。在 4.0 的實驗中,當您的目標是 HTML5 時建議使用 Godot 3.x。

執行匯出的專案:

Godot 的目標是盡可能地獨立於平臺,並且可以相對輕鬆地 移植到新平臺

備註

使用Godot 4以C#編寫的專案目前無法匯出至Web平台。若要在該平台上使用C#,請考慮使用Godot 3。從Godot 4.2開始,提供Android與iOS平台的支援,但其仍處於實驗階段,且 存在一些限制

編輯器

功能:

  • 場景樹編輯器。

  • 內建腳本編輯器。

  • 支援如 Visual Studio Code 或 Vim 的 外部腳本編輯器

  • GDScript 除錯工具

    • 從 4.2 版本開始,已支援線程中的除錯功能。

  • 視覺化(性能)分析器能指出在算繪管線中 CPU 與 GPU 在每個步驟花費的時間。

  • 性能監視工具,包括 自訂效能監視器

  • 即時腳本重載。

  • 即時場景編輯。

    • 更改將反應到編輯器上,並會在正在執行的專案關閉後保留。

  • 遠端檢視器。

    • 更改將不會反應到編輯器上,且關閉正在執行的專案後將不會保留。

  • 即時相機複製。

    • 移動編輯器中的相機,並在執行中專案內檢視結果。

  • 內寘離線類參攷檔案。

  • 在編輯器中使用數十種由社群支援的語言。

外掛程式:

算繪

Godot 4 包含三種算繪器:

  • Forward+ 。最先進的算繪器,僅適用於桌上型平台。在桌上型平台預設使用此算繪器。此算繪器使用 VulkanDirect3D 12Metal 作為算繪驅動程式,並使用 RenderingDevice 後端。

  • 行動裝置 。功能較少,但能更快地算繪簡單場景。適用於行動裝置和桌面平台。在行動裝置平台上預設使用。此算繪器使用 VulkanDirect3D 12Metal 作為繪圖驅動程式,並使用 RenderingDevice 後端。

  • 相容性 ,有時也稱為 GL 相容性 。這是最基礎的算繪器,適用於低階桌上型和行動平台。在網頁平台預設使用此算繪器。此算繪器使用 OpenGL 作為其繪圖驅動程式。

詳見 算繪器 以獲得算繪方法的詳細比較。

2D 圖形

  • Sprite、多邊形與線條算繪引擎。

    • 用於繪製線和多邊形的高級工具,例如 Polygon2DLine2D ,支援紋理。

  • AnimatedSprite2D 輔助製作動畫精靈。

  • 視差圖層。

    • 偽3D支援,可在編輯器中進行預覽。

  • 帶有法線貼圖和鏡面反射貼圖的 2D 光照

    • 2D 點光源(全向燈/聚光燈)和平行光源。

    • 晃動可依像素級別或物件級別來判斷。

    • 自訂著色器可以存取一個基於 LightOccluder2D 節點的,由即時 帶符號距離場 表示的二維場景,它可以用於改進二維照明效果,包括二維全域光源。

  • 字形算繪 使用點陣圖,光柵化使用 FreeType 或多通道有符號距離場(MSDF)。

    • 點陣字型可以使用 BMFont 等工具匯出,也可以從圖像匯入(僅適用於等寬字形)。

    • 動態字形支援單色字形以及彩色字形(例如用於表情符號)。支援的格式有 TTF、OTF、WOFF1 和 WOFF2。

    • 動態字形支援具有可調整寬度和顏色的可選字形輪廓。

    • 動態字形支援可變字形和 OpenType 功能,包括連字(ligatures)。

    • 當字形檔缺少粗體和斜體樣式時,動態字形支援類比這些樣式。

    • 動態字形支援超取樣, 以在更高的解析度下保持字形的清晰度.

    • 動態字形支援亞像素定位(subpixel positioning),使字形在小尺寸下更清晰。

    • 動態字形支援 LCD 亞像素優化,使字形在小尺寸下更加清晰。

    • 帶符號距離場字形可以在任何解析度下進行縮放,而無需重新光柵化。與單色帶符號距離場字形相比,利用多通道可使帶符號距離場字形更好地縮放至更小尺寸。

  • 基於 GPU 的 粒子 ,支援 自訂粒子著色器

  • 基於 CPU 的粒子。

  • 可選: 2D HDR 算繪 以獲得更佳的發光效果。

2D 工具

  • TileMap 用於由 2D 圖塊建構的關卡設計。

  • 具有內建平滑與拖移邊距的 2D 相機。

  • 用於在 2D 空間中表示路徑的 Path2D 節點。

    • 可在編輯器中繪製或以程式產生。

    • 可用於使節點跟著 Path2D 路徑的 PathFollow2D 節點。

  • 2D 幾何輔助類

2D 物理

物理形體:

  • 靜態形體。

  • 動畫體(用於僅通過腳本或動畫移動的物體,如門和平臺)。

  • 剛體。

  • 靜態形體。

  • 關節。

  • 用於偵測形體進入或離開的區域。

碰撞偵測:

  • 內建形狀:線、框、圈、橢圓。

  • 碰撞幾何 (可手動繪製或從編輯器中自 Sprite 產生)。

3D 圖形

  • 使用 sRGB 進行 HDR 算繪。

  • 透視法、正視投影與錐臺偏移相機。

  • 當使用 Forward+ 算繪器時,會採用深度預處理 (depth prepass) 來提升複雜場景的效能,藉此降低過度繪製 (overdraw) 的成本。

  • 在 Forward+ 和行動算繪器中,於支援的 GPU 上使用 可變速率著色 功能。

基於物理的算繪(內建材質功能):

  • 依照 Disney PBR 模型。

  • 支援 Burley、Lambert、Lambert Wrap(半 Lambert)、Toon 漫反射著色模式。

  • 支援 Schlick-GGX、Toon 和 Disabled 鏡面反射著色模式。

  • 使用粗糙度金屬度工作流,支援 ORM 紋理。

  • 使用地平綫镜面反射遮蔽(Filament 模型)提升材质外觀。

  • 法線貼圖。

  • 具有基於距離的自動細節級別的視差/浮雕貼圖。

  • 反照率和法線貼圖的詳細貼圖。

  • 次表面散射和透射率。

  • 支援材質粗糙度的螢幕空間折射(達到模糊折射的效果)。

  • 鄰近淡出(軟粒子)和距離淡出。

  • 遠離時淡出可以使用透明度混合(alpha blending)或顏色抖動(dithering)避免穿過透明管線。

  • 晃動可依像素級別或物件級別來判斷。

即時光照:

  • 有向光照 (太陽/月亮)。每個場景最多可有 4 個。

  • 全向光照。

  • 有可調整圓錐角與衰減的聚光。

  • 可以在每個光源的基礎上調整鏡面反射、間接光和體積霧的能量。

  • 可調節的燈光 "大小" 來説明虛擬區域打光(也會使陰影更模糊)。

  • 可以選擇距離漸變系統(distance fade system )來漸變遠處的燈光及其陰影,提高性能。

  • 當使用 Forward+backend (桌面上的預設設定)時,燈光將使用集群前向優化進行算繪,以降低其單獨成本。集群算繪還取消了對網格上可以使用的燈光數量的任何限制。

  • 當使用行動裝置算繪器時,每個網格資源最多可顯示 8 個泛光源和 8 個聚光燈。如有需要,可使用烘焙照明來克服此限制。

陰影對應:

  • DirectionalLight: 正交 (最快), PSSM 2-Split 與 4-Split。支援在 Split (切割) 間混合。

  • OmniLight: Dual Paraboloid (較快) 或 Cubemap (較慢但較精確)。支援 Panoramas 格式的色彩透射紋理 (Colored Projector Texture)。

  • SpotLight: 單一紋理。

  • 陰影通常情況下會偏置補償和陰影平移,以減少可見的陰影失真和陰影懸浮的數量。

  • 類似 PCSS 的陰影模糊效果,根據光源大小以及陰影投射到表面的距離進行計算。

  • 晃動可依像素級別或物件級別來判斷。

以間接光照進行全域照明:

  • 烘焙光照貼圖 (快速,但無法在執行時更新)。

    • 僅支援烘焙間接光源或同時烘焙直接光源和間接光源。 烘焙模式可以在每種光線的基礎上進行調整,以允許混合光線烘焙設定。

    • 支援使用基於八叉樹的自動系統照明動態對象。 不需要手動放置探頭。

    • 可選支援基於球諧函式的平行光和粗糙反射。

    • 光照貼圖在 GPU 上使用計算著色器烘焙(與 CPU 計算光照貼圖相比速度更快)。烘焙只能在編輯器中進行,不能在匯出的專案中進行。

    • 支持使用 JNLM 進行基於 GPU 的 去噪,或使用 OIDN 進行基於 CPU/GPU 的去噪。

  • 基於體素的 GI 探針。支援動態光源 以及 動態遮擋物,同時也支援反射。需要快速烘焙步驟,可以在編輯器中或在運行時執行(包含從匯出的專案)。

  • 符號距離場景全域照明 (SDFGI) 專為大型開放世界設計。支援動態光源,但不支援動態遮擋物。支援反射。無需烘焙。

  • 螢幕空間間接光照(SSIL),可以選擇半解析度或全解析度。它完全即時並支援任何類型的發光光源(包括裝飾)。

  • VoxelGI 和 SDFGI 使用延遲算繪通道,可以在半解析度下算繪全域光照,以提高性能(同時還支援 MSAA 抗鋸齒)。

反射:

  • 基於體素的反射(使用 GI 探針時)和基於 SDF 的反射(使用有符號距離場 GI 時)。基於體素的反射在透明表面上可見,而粗糙的基於 SDF 的反射在透明表面上也可見。

  • 使用 ReflectionProbe 來快速烘焙反射或較慢的即時反射。可選擇性開啟平行矯正。

  • 支援材料粗糙度的螢幕空間反射。

  • 可混合使用多個反射技術以取得更高的精確度。

  • 當使用 Forward+ 算繪器(桌面平台的預設選項)時,反射探針會以叢集式前向優化方式算繪,以降低它們各自的成本。叢集式算繪也解除了網格上可使用的反射探針數量限制。

  • 當使用行動算繪器時,每個網格資源最多可顯示 8 個反射探針。當使用相容性算繪器時,每個網格資源最多可顯示 2 個反射探針。

功能:

  • 支援反照率, 發光、ORM, 和法線貼圖。

  • 紋理通道可以平滑地疊加在底層材料之上,並支援普通/純 ORM 裝飾。

  • 支援根據入射角度來淡出裝飾的法線淡出效果。

  • 不依賴即時網格生成。這表示即使貼花每幀移動,也能在複雜的骨骼蒙皮網格上使用,且不會有效能損失。

  • 最近、雙線性、三線性或各向異性篩選。

  • 可選的距離衰減系統,用於淡化遠處的貼花,以提升效能。

  • 當使用 Forward+ 彩現器(桌機預設)時,貼花會以叢集式前向最佳化方式彩現,以降低個別的效能成本。叢集式彩現也解除了單一網格上可使用貼花的數量限制。

  • 當使用行動彩現器時,每個網格資源最多可顯示 8 個貼花。

天空:

  • 全景天空 (使用 HDRI)。

  • 程式天空和基於物理的天空,用於回應場景中的方向光。

  • 支援 自訂天空著色器 可以進行動畫處理。

  • 取決於所選的品質設定,用於環境光和鏡面反射光的輻射圖可以即時更新。

霧:

  • 指數深度霧。

  • 指數高度霧。

  • 支援依照相機角度自動調整深度霧色彩 (以配合陽光的色彩)。

  • 支援視覺著色器外掛。

  • 支持控制霧氣算繪對天空的影響程度,並為傳統霧氣和體積霧氣提供獨立的控制選項。

  • 支持使特定材質忽略霧氣效果。

體積霧:

  • 對光影做出反應的全域 體積霧

  • 在使用VoxelGI或SDFGI時體積霧可以受間接光影響。

  • 可以放置以向特定區域新增霧(或從特定區域去除霧)的霧體積節點。可以支援的形狀包括方框、橢圓、圓錐、圓柱和基於3D紋理的密度圖。

  • 每個霧體積都可以有自己的自訂著色器。

  • 可與傳統霧一起使用。

粒子:

  • 基於 GPU 的粒子,支援子發射器( 2D+3D )、尾跡( 2D+3D )、吸引器( 僅限 3D )和碰撞( 2D+3D )。

    • 支援 3D 粒子吸引器形狀:長方體、球體和 3D 向量場。

    • 支援 3D 粒子碰撞形狀:長方體、球體、烘焙帶符號距離場和即時高度圖(適用於開放世界天氣效果)。

    • 2D 粒子碰撞是使用基於場景中的 LightOccluder2D 節點即時生成的帶符號距離場來處理的。

    • 尾跡可以使用內建的帶狀尾跡和管狀尾跡網格,也可以使用帶有骨架的自訂網格。

    • 支援手動發射的自訂粒子著色器。

  • 基於 CPU 的粒子。

後處理:

  • 色調對應 (線性, Reinhard, Filmic, ACES)。

  • GLES3: 基於檢視區亮度自動調整曝光。

  • 可以通過景深的遠近調節對焦外散斑的模擬(方框、六邊形、圓形)。

  • GLES3: 螢幕空間週遭遮擋。

  • 以可選的雙立方放大發光,並有多種可用的混合模式:螢幕、軟廣、新增、取代。

  • 輝光可以使用彩色污漬貼圖紋理,實作鏡頭髒汙效果。

  • 發光效果可以 作為屏幕空間模糊效果使用

  • 使用單維漸變進行色彩校正。

  • 可減少鏡面反射鋸齒的影響的粗糙度限幅器。

  • 亮度、對比度與飽和度調整。

紋理篩選:

  • 最近、雙線性、三線性或各向異性篩選。

  • 晃動可依像素級別或物件級別來判斷。

紋理壓縮:

  • Basis Universal(速度較慢,但檔較小)。

  • GLES3: BPTC 以獲得高品質壓縮 (在 macOS 上不支援)。

  • GLES3: ETC2 (在 macOS 上不支援)。

  • GLES3: S3TC (在行動裝置與網頁平台上不支援)。

抗鋸齒:

  • 時間 抗鋸齒 (TAA)。

  • AMD FidelityFX Super Resolution 2.2:參見 抗鋸齒 (FSR2),此技術可以原生解析度作為一種高品質的時間性抗鋸齒形式使用。

  • 多重取樣抗鋸齒( MSAA ),同時適用於 2D 抗鋸齒3D 抗鋸齒

  • 多取樣抗鋸齒 (MSAA)。

  • 使用雙線性三維縮放和高於 1.0 的三維解析度比例進行超取樣抗鋸齒 (SSAA)。

  • 在每種材質基礎上的 Alpha 抗鋸齒、基於多重取樣(MSAA)的 Alpha 覆蓋(Alpha-To-Coverage)和 Alpha 雜湊。

反射:

  • 支援 以較低解析度算繪 3D ,同時保持原始比例的 2D 算繪。 這可用於提高低端系統的性能或改善高端系統的視覺效果。

  • 解析度縮放可以選擇雙線性過濾或 AMD FidelityFX Super Resolution 1.0 (FSR1) 或 AMD FidelityFX Super Resolution 2.2 (FSR2)。

  • 多級漸遠紋理 LOD 偏置會自動調整,以提高較低解析度比例下的品質。也可以通過手動偏移進行修改。

這些效果中大多數都可以調整為更佳效能或進一步提升品質。這些調整有助於在 using Godot for offline rendering

3D 工具

  • 內建網格:立方體、圓柱體/錐體、(半)球體、稜柱體、平面、四邊形、圓環面、條帶、管狀。

  • GridMaps 用於由 3D 圖塊建構的關卡設計。

  • 建置實體集合 (用於製作 Prototype)。

  • 用於 產生集合 的工具。

  • 在 3D 空間中表示路徑的 Path3D 節點。

    • 可在編輯器中繪製或以程式產生。

    • 使用 PathFollow3D 節點來使節點跟隨 Path3D。

  • 3D geometry helper class.

  • 支援將目前場景匯出為 glTF 2.0 檔案,可從編輯器和已匯出專案的執行期間進行。

3D 物理

物理形體:

  • 靜態形體。

  • 動畫體(用於僅通過腳本或動畫移動的物體,如門和平臺)。

  • 剛體。

  • 靜態形體。

  • Vehicle 形體 (用於處理 Arcade 物理而非模擬)。

  • 關節。

  • 軟體。

  • Ragdoll。

  • 用於偵測形體進入或離開的區域。

碰撞偵測:

  • 內建形狀:長方體、球體、膠囊體、圓柱體 (僅適用於 Bullet 物理)。

  • 在編輯器內為任意網格產生三角碰撞區域。

  • 在編輯器內為任意網格產生一個或多個凸碰撞區域。

著色器

  • 2D: 自定頂點、Fragment 與光照著色器。

  • 3D: 自定頂點、Fragment、光照與天空著色器。

  • 使用 受 GLSL 啟發的著色器語言 編寫純文字著色器。

  • 視覺著色器編輯器。

    • 支援視覺著色器外掛。

撰寫腳本

一般:

  • 可通過腳本來擴充節點的物件導向設計模式。

  • 可通過訊號與群組來在腳本間進行通訊。

  • 支援 跨語言腳本編寫

  • 多種 2D 與 3D 線性代數資料型別,如向量與變換(transforms)。

GDScript:

C#:

  • 打包為獨立二進位檔案,以減少檔案大小與相依性。

  • 支援 .NET 8 或更高的版本。

    • 完整支援 C# 12.0 語法與功能。

  • 支援 Windows、Linux 和 macOS。自 Godot 4.2 起,也提供 Android 和 iOS 的實驗性支援。

    • 在 iOS 平台上只支援某些架構:arm64

    • 瀏覽器平臺暫不支援。要在該平臺上使用 C # 請改用 Godot 3。

  • 建議使用外部編輯器以獲得更多 IDE 功能。

GDNative (C, C++, Rust, D, ...):

  • 當有需要時,可通過連接到原生函式庫以獲得更佳效能與進行第三方整合。

    • 若要撰寫遊戲腳本邏輯,則建議在效能允許的情況下使用 GDScript 或 C#。

  • 官方對 CC++ 的 GDExtension 綁定。

    • 可依照需求使用任何建置系統與語言功能。

  • 社群提供的 GDExtension 綁定,包括 DSwiftRust ,都在積極開發中。(部分綁定仍屬實驗性質,尚未適用於正式專案)。

音訊

功能:

  • 單聲道、立體聲、5.1 與 7.1 輸出。

  • 在 2D 與 3D 空間中的非位置性與位置性播放。

    • 在 2D 與 3D 中提供可選的都卜勒效應。

  • 支援可重新導向的 音訊匯流排 與特效,並包含數十種特效。

  • 支援複調(使用單個 AudioStreamPlayer 節點播放多個聲音)。

  • 支援視覺著色器外掛。

  • 支援視覺著色器外掛。

  • 支援順序 / 隨機取樣,包括在隨機取樣時防止重複。

  • Listener3D 節點可用於在 3D 空間中以與相機的位置進行監聽。

  • 支援 程式化音訊產生

  • 錄製麥克風的音訊輸入。

  • MIDI 輸入。

    • 尚未支援 MIDI 輸出。

所用 API:

  • Windows: WASAPI。

  • macOS: CoreAudio。

  • Linux: PulseAudio 或 ALSA。

匯入

格式:

  • 圖片: 請參閱 匯入圖像

  • 音訊:

    • WAV,可選擇是否使用 IMA-ADPCM 壓縮。

    • Ogg Vorbis。

    • MP3。

  • 圖片: 請參閱 匯入 3D 場景

    • glTF 2.0 (推薦)

    • .blend (隱式呼叫 Blender 的 glTF 匯出功能)。

    • FBX (通過明確的呼叫 FBX2glTF )。

    • Collada (.dae)。

    • Wavefront OBJ (僅可使用靜態場景,可直接載入為網格)。

  • 支援在執行期間載入 glTF 2.0 場景,包含從匯出的專案載入。

  • 在匯入時使用 Mikktspace 為 3D 網格生成切線,保證與 Blender 等其他 3D 應用的一致性。

輸入

  • 輸入對應系統,支援硬編碼輸入事件或可重新對應的輸入操作。

    • 座標軸數值可對應至兩個不同的操作,並配有可設定的反應區域。

    • 使用同一個程式碼來同時支援鍵盤與遊戲控制器。

  • 鍵盤輸入。

    • 可將按鍵以「物理模式」進行對應,以避免因鍵盤配置不同而影響對應。

  • 滑鼠輸入。

    • 可將滑鼠遊標設為可見、隱藏、捕捉、或限制於視窗內。

    • 捕捉滑鼠輸入時,在 Windows 與 Linux 上會使用原始輸入,以繞過作業系統的滑鼠加速設定。

  • 遊戲控制器輸入 (同時支援最多 8 組控制器)。

  • 具有感壓支援的繪圖筆/繪圖板輸入。

網路

  • 使用 StreamPeerTCPServer 進行低階 TCP 網路通訊。

  • 使用 PacketPeerUDPServer 進行低階 UDP 網路通訊。

  • 使用 HTTPClient 進行低階 HTTP 請求。

  • 使用 HTTPRequest 進行高階 HTTP 請求。

    • 支援 HTTPS,使用內建附帶的憑證。

  • 使用 UDP 與 ENet 的 高階多人連線 API。

    • 通過遠端程式呼叫 (RPC) 來自動複製。

    • 支援不可靠、可靠、與有序的傳輸模式。

  • 支援所有平台上的 WebSocket 客戶端與伺服器。

  • 支援所有平台上的 WebRTC 客戶端與伺服器。

  • 支援 UPnP,可在 NAT 環境下架設伺服器時免除連接埠轉發需求。

國際化

  • 完整支援包含 Emoji 在內的 Unicode。

  • 將本地化字串儲存於 CSVgettext 格式。

    • 支援從編輯器中生成 gettext POT 和 PO 檔。

  • 可在 GUI 元素中自動使用專案中的本地化字串,亦可使用 tr() 函式。

  • 當使用 gettext 翻譯時,支援多元化和翻譯本文。

  • 支援 雙向排版 ,文字整形和 OpenType 當地語系化表單。

  • 用於從右到左區域設定的自動UI鏡像。

  • 支援偽當地語系化,以測試您的專案對 i18n 的友好性。

視窗環境與作業系統整合

  • 在單個程序中生成多個獨立視窗。

  • 移動、縮放、最小化與最大化由專案產生的視窗。

  • 更改視窗標題與圖示。

  • 喚起注意 (在大多數平台上,會使標題列閃爍)。

  • 全螢幕模式。

    • 在 Windows 上,預設情況下使用無邊框全屏進行快速切換,但也可以選擇使用獨佔全屏來減少輸入滯後。

  • 無邊框視窗 (可用於全螢幕或非全螢幕)。

  • 可將視窗設為總是在最頂端。

  • 在 macOS 中可整合全域選單。

  • 阻斷式或非阻斷式地執行指令。

  • 使用預設或 (系統中有註冊時) 自定的通訊協定處理常式來開啟檔案路徑或網址。

  • 解析自定命令列參數。

  • 任何 Godot 二進位檔案(編輯器或匯出的專案)都可以 用作無頭伺服器 ,方法是用 --headless 命令列參數啟動它。這允許在沒有GPU或顯示伺服器的情況下運作引擎。

行動裝置

  • AndroidiOS 上的應用內購。

  • 支援以第三方模組來顯示廣告。

支援 XR (AR 與 VR)

  • 開箱即用的 OpenXR 支援

    • 包含對 Meta Quest、Valve Index 等流行頭戴式裝置的支援。

  • 透過外掛程式支援使用 OpenXR 的 Android 平台頭戴式裝置

    • 包含對 Meta Quest 1/2/3 Pro、Magic Leap 2 、Lynx R1等流行頭戴式裝置的支援。

  • 其他設備通過XR外掛結構支持。

  • 各種先進的工具包可用於實現XR應用程序所需的常見功能。

GUI 圖形界面系統

Godot 的 GUI 時使用在 Godot 中製作遊戲相同的 Control 節點製成的。編輯器的 UI 可通過擴充套件來輕鬆擴充。

節點:

  • 按鈕。

  • 勾選框、勾選按鈕、單選按鈕。

  • 使用 LineEdit (單行)和 TextEdit (多行)進行文字輸入。TextEdit 還支援程式碼編輯功能,例如顯示行號和語法高亮。

  • 使用 PopupMenuOptionButton 製作下拉選單。

  • 滾動條。

  • 標籤。

  • 使用 RichTextLabel 來顯示 使用 BBCode 格式化的文字

  • 樹狀圖 (也可以用於顯示表格)。

  • 支援 RGB 及 HSV 模式的取色器。

  • Control 節點可旋轉與縮放。

調整大小:

  • 通過錨點 (Anchor) 來將 GUI 元素置於特定的角落、邊緣或置中。

  • 通過容器 (Container) 來依照特定規則自動擺放 GUI 元素。

  • 利用 canvas_itemsviewport 伸縮模式,支援 多種解析度

  • 通過錨定與 Expand 伸縮模式來支援任何長寬比。

佈景主題:

  • 內建主題編輯器。

    • 通過目前的編輯器佈景主題設定來產生佈景主題。

  • 使用 StyleBoxFlat 來製作基於向量的佈景主題。

    • 支援圓角與斜角、陰影,與每個邊都可調整的寬度。

  • 通過 StyleBoxTexture 來以紋理製作佈景。

Godot 的小型發行版大小適合用於作為 Electron 或 Qt 的替代方案。

動畫

  • 正向運動學與反向運動學。

  • 支援以可客製化的插值算法來動畫化任何屬性。

  • 支援在動畫軌中呼叫方法。

  • 支援在動畫軌中播放聲音。

  • 支援在動畫中使用貝茲曲線。

視訊格式

  • 場景與資源可保存為 文字檔 或二進位格式。

    • 文字檔為人類可讀取的格式,並較適合用於版本控制系統。

    • 二進位檔案在保存與讀取大型場景或資源時較快。

  • 使用 FileAccess 讀寫文字或二進位檔案。

    • 可使用可選的壓縮或加密。

  • 可讀寫 JSON 檔案。

  • 可通過 ConfigFile 來讀寫 INI 格式的組態設定檔。

    • 可序列化或復原序列化任何 Godot 資料型別,包含 Vector, Color…等。

  • 可通過 XMLParser 來讀取 XML 檔案。

  • 在匯出的專案中載入和儲存圖片、音訊/視訊、字型和 ZIP 壓縮檔,無需透過 Godot 的匯入系統。

  • 可將遊戲資料打包進 PCK 檔案 (可更快讀取的客製化格式),或是打包進 ZIP 壓縮檔,亦或是直接打包進執行檔內來發行單一檔案。

  • 匯出額外的 PCK 檔案 ,可讓引擎讀取,並用於支援 Mod 或 DLC。

雜項

  • Video playback 提供對Ogg格式的支援。

  • 電影製作模式 可從正在運作的專案中錄製影片,並具有同步音訊和完美的影格同步。

  • 低階伺服器存取 可在需要時繞過場景樹的一些瓶頸。

  • 更多有關命令列參數的資訊,請參考 命令列教學

    • 通過持續整合 (CI, Continuous Integration) 平台來匯出與部署專案。

    • 可用於 Bash, ZSH 與 Fish 的 自動補全腳本

    • 使用 print_rich 將彩色文字列印至所有平臺的標準輸出。

  • 支援將 C++ 模組 靜態連結至引擎執行檔中。

  • 引擎與編輯器以 C++03 撰寫。

    • 可通過 GCC, Clang 與 MSVC 進行 編譯 。亦支援 MinGW。

    • 對打包者友好。在大多數情況下,都可使用系統函式庫來代替 Godot 中提供的函式庫。建置系統不需要額外下載任何東西。建置過程完全可重現。

  • 以鬆散的 MIT 授權條款授權。

也參考

Roadmap Repository 中的文件說明了經討論同意且可能在未來版本中實作的功能。