Godot

| 此條目的语调或风格或許不合百科全書。 (2019年5月22日)
請根據指南協助改善这篇条目，並在讨论页討論問題所在，加以改善。

|

Godot

開發者| Juan Linietsky、Ariel Manzur、Rémi Verschelde及使用者社群
首次发布| 2014年1月14日，​10年前​（2014-01-14）[1]
当前版本|

* 3.5.3 (2023年9月25日；長期支援)[2]
* 4.2.2 (2024年4月18日；穩定版本)[3]

源代码库| github.com/godotengine/godot
编程语言| GDScript、VisualScript、C++、C#
操作系统| Windows、macOS、Linux、Android
平台| Windows、macOS、Linux、BSD、Haiku、iOS、Android、HTML5、WebAssembly、Xbox One、通用Windows平台
类型| 遊戲引擎
许可协议| MIT許可證
网站| godotengine.org

Godot是一款多功能、跨平台的2D與3D開源游戏引擎。可运行於Windows、macOS、Linux等多種操作系统。而其创建的游戏可运行於PC、Android、iOS、HTML5等平台。

## 特性[编辑]

Godot在MIT許可證下完全自由开源，且受到軟體自由保護組織的支持。改編過的遊戲乃至引擎的每一行代碼，都屬於用戶自己所有。Godot的開發是完全獨立且由社區驅動的，允許使用者按照自己的期望去雕塑他們的引擎。

引擎的架构是围绕“节点”树设计的。节点组织在“场景”中，场景可以复用、实例化、继承。包括脚本和图形资产在内的所有游戏资源都是作为文件系统中的文件保存的，不依赖于数据库，可以方便使用版本控制的开发团队进行协作。

### 支持的平台[编辑]

Godot支持进行多平台部署，能够针对不同的平台指定不同的纹理压缩方法和分辨率等设置。官方网站上仅提供适用于编辑器平台的二进制文件，导出到其他平台需要通过编辑器进行。

用于开发游戏的Godot编辑器支持如下平台：

* Linux、macOS、Windows等桌面平台。通过官网、Steam、Itch.io分发。支持BSD，但必须手动编译。
* HTML5平台，提供有Web编辑器[1]。 （页面存档备份，存于互联网档案馆）[4]
* Android手机和平板（实验性质，Godot 3.5起提供）。

使用Godot制作的游戏能够在更多的平台上运行。截止到3.5.1，除了编辑器所支持的平台外，还支持以下平台：

* 移动平台iOS。
* 桌面平台通用Windows平台。
* 虚拟/增强现实平台HTC Vive、Valve Index、Oculus Rift、Oculus Go、Oculus Quest，以及微软MR头戴式设备、苹果的ARKit等。

虽然Godot引擎能够在主机平台运行，但Godot无法提供官方支持。因为Godot是开源项目，无法获得公司授权，也无法将主机平台所需的相关代码按照開源授權发布。可以使用第三方公司的主机平台的移植服务将Godot游戏导出到主机平台。

### 脚本[编辑]

Godot支持使用不同的编程语言开发游戏，比如Godot自己的GDScript语言、C#、C++等。引擎还提供了GDExtension接口（3.x版本时期为GDNative），可用于创建其他语言的绑定。官方提供的C、C++支持就是通过GDExtension实现的。社区支持的语言包括Rust、Nim、JavaScript、Haskell、Clojure、Swift、D。

#### GDScript[编辑]

GDScript编程范型| 面向对象

|

實作者| Godot社区
当前版本|

* 3.5.3 (2023年9月25日；長期支援)[2]
* 4.2.2 (2024年4月18日；穩定版本)[3]

型態系統| 动态
操作系统| 跨平臺
文件扩展名| .gd
網站| docs.godotengine.org
啟發語言
C, C++, Python

Godot内置的GDScript脚本语言是一种高级动态类型编程语言，语法与Python类似。与Python不同，GDScript是针对Godot的场景架构设计的，一个文件就是一个类，并且可以为变量限定类型。

开发GDScript之前，Godot的开发者尝试使用过Lua、Python、Squirrel（英语：Squirrel (programming language)）等第三方脚本语言，但最终为了优化和编辑器集成选择使用自定义的语言。

简单的Hello World程序如下：

func _ready():
print("Hello World")

而更为复杂的，用于生成斐波那契数列的程序可以写为：

func _ready():
var nterms = 5
print("Fibonacci sequence:")
for i in range(nterms):
print(fibonacci(i))

func fibonacci(n):
if n <= 1:
return n
else:
return fibonacci(n - 1) + fibonacci(n - 2)

### 渲染[编辑]

Godot的图形引擎在所有平台上均使用OpenGL或OpenGL ES。正在开发的Godot 4中将加入Vulkan支持，可以通过MoltenVK（英语：MoltenVK）支持Metal。

着色器语言使用的是一种自定义的语言，与GLSL类似。着色器可用于材質和渲染。

Godot的2D图形引擎与3D图形引擎是独立的。可以使用“视口节点（Viewport node）”混合2D和3D内容。

### 其他特性[编辑]

Godot拥有强大的动画系统，可以通过可视化的方式实现骨骼动画、混合、动画树、实时过场动画。游戏实体上的几乎所有变量都能够进行动画。

其他特性包括：

* 性能分析图表
* 光线映射
* 多线程
* 插件系统
* 渲染目标
* Theora视频播放
* Ogg Vorbis、MP3、WAV音频播放
* 粒子系统
* 纹理的导入、导出、压缩管线
* 导航网格（英语：Navigation mesh）
* 图形用户界面
* 键盘、鼠标、遊戲手柄、触摸屏支持

## 历史[编辑]

Godot最初于2007年由Juan Linietsky（reduz）和Ariel Manzur（punto）开发[5][6]。Linietsky在一次演讲中表示Godot的名称来源于萨缪尔·贝克特的戏剧《等待戈多》，代表向引擎中不断加入新功能的愿望，可以让引擎无限接近全能的状态[7]。2014年2月，Godot在GitHub上开源，使用MIT协议[8]。

2014年12月15日，Godot迎来了首个稳定版本1.0，加入了光线映射、导航网格（英语：Navigation mesh）支持、以及许多着色器[9]。

2015年5月21日，1.1版本发布，重写了2D引擎，完善了代码编辑器的自动补全功能和Blender Collada导出器，加入了可视化着色器编辑器、全新的操作系统窗口及屏幕管理API、全新的2D导航多边形支持、以及暗色主题。[10]重写后的2D引擎支持着色器、材质、各节点独立的Z排序、灯光、基于多边形遮挡的阴影、法线映射、以及距离场字体。2015年11月4日，Godot加入了软件自由保护组织[11]。

2020年1月29日，3.2版本发布，大幅优化了文档以及对C#和glTF 2.0的支持。与此同时，开发组决定正式开始投入4.0版本的开发，3.2版本将作为长期支持版本维护[12]。

由于越来越多4.0版本的功能被移植回3.2开发分支，远远超出了3.2.X版本仅作维护、不添加新功能的意图，开发组于2021年3月17日决定将长期支持版本从3.2改为3.X[13]。原本正处于RC状态的预览版3.2.4 RC 5在后续发布时也随之将版本号改成了3.3 RC 6。

2022年11月1日，Godot建立了自己的基金会，离开了软件自由保护组织[14][15]。

2023年3月1日，在经历了许多beta版本和问题修复后，Godot 4正式发布。这是一次主版本的更新，重写了渲染系统，加入了对Vulkan图形API的支持，提升了GDScript的性能和稳定性，加强了物理和动画系统，还加入了很多其他功能和问题修复。

### 发布历史[编辑]

格式：
舊版本
舊版本，仍被支援
当前版本
最新预览版本
未来版本

Godot 引擎发布历史  版本  | 发布日期[16] | 备注  | 最新补丁发布

|
|
|

舊版本，不再支援： 1.0  | 2014年12月  | 首个稳定版本  | 1.0
舊版本，不再支援： 1.1  | 2015年5月  | 优化了代码编辑器的自动补全功能，加入了可视化着色器编辑器和2D导航多边形支持，重写了2D引擎。  | 1.1
舊版本，不再支援： 2.0  | 2016年2月  | 更新了UI，增强了调试器  | 2.0.4.1
舊版本，不再支援： 2.1  | 2016年7月  | 加入了素材数据库、性能分析器、以及插件API。  | 2.1.6
舊版本，不再支援： 3.0  | 2018年1月  | 加入了PBR渲染器以及对Mono（C#）的支持。使用Bullet作为默认物理引擎。  | 3.0.6
舊版本，不再支援： 3.1  | 2019年3月  | 为GDScript加入了静态类型支持及脚本类系统，并且加入了OpenGL ES 2.0渲染器。  | 3.1.2
舊版本，不再支援： 3.2  | 2020年1月  | 支持glTF 2.0文件，加入了OpenGL ES 2.0 批量渲染、iOS的C#支持，优化了大量文档。  | 3.2.3
舊版本，不再支援： 3.3  | 2021年4月  | 加入了对ARM macOS、Android AAB、MP3、FBX、WebXR的支持，并且开始提供网页版编辑器。  | 3.3.4
舊版本，不再支援： 3.4  | 2021年11月  | 重写了主题编辑器，优化了ACES色调映射、加入了对PWA、物理输入、glTF 2.0导出的支持。  | 3.4.5
當前版本： 3.5 | 2022年8月  | 加入了Android编辑器、着色器异步编译、物理插值、材质覆盖层，改进了导航系统。  | 3.5.2
未来版本： 3.6  | 未定[17] | Godot 3.x的下一个次版本更新，为LTS版本。  | 3.6 beta 4[18]
舊版本，仍被支援： 4.0  | 2023年3月  | 支持Vulkan图形API及最新版Mono。加入基于SDF的全局光照，以及很多编辑器修改和性能提升。  | 4.0.4
舊版本，仍被支援： 4.1  | 2023年7月  | 新增實驗性的場景多執行緒功能、編輯器強化、和C#性能提升[19] | 4.1.4[20]。
當前版本： 4.2 | 2023年11月  | 重新設計動畫工具和粒子系統、新增GDExtension功能、改善匯入管線、支援FSR 2.2[21]。  | 4.2.2[20]
未来版本： 4.3  | 2024年上半年  | 透過無環圖實現GPU同步[22]。  | 4.3.dev1

## 游戏作品[编辑]

* RPG in a Box (2019)
* Brotato (2022)
* Lumencraft (2022)
* Dome Keeper (2022)
* HAYAI (2022)
* Swords and Sandals Immortals (2022)
* Endoparasitic (2022)
* 魔導書幸存者 (2022)
* 文字遊戲 (2022)
* 租戶賭財運 (2023)
* 週五放克夜 (VR)
* Cruelty Squad （页面存档备份，存于互联网档案馆）
* Kingdoms of the Dump （页面存档备份，存于互联网档案馆）
* Gawr Gura: Quest for Bread
* 刺猬索尼克 缤纷色彩（採用部分引擎原始碼）

## 另见[编辑]

* 电子游戏主题

* 游戏引擎列表
* 电子游戏制作

## 參考資料[编辑]

1. ^ Linietsky, Juan. Godot Engine - First public release!. Godot Engine. 2014-01-14  [2019-07-01]. （原始内容存档于2019-07-01）.
2. ^ 2.0 2.1 https://godotengine.org/article/maintenance-release-godot-3-5-3/.
3. ^ 3.0 3.1 Maintenance release: Godot 4.2.2.
4. ^ Godot Engine Web Editor. Godot Engine Web Editor.  [2023-11-05]. （原始内容存档于2023-10-16） （英语）.
5. ^ StraToN. SteamLUG Cast.  [18 June 2016]. （原始内容存档于2018-06-12）.
6. ^ reduz. Godot history in images!.  [18 June 2016]. （原始内容存档于2021-05-15）.
7. ^ Juan Linietsky presentation of Godot at RMLL 2015 in Beauvais, France. 7 July 2015  [2021-03-02]. （原始内容存档于2015-10-05）.
8. ^ liamdawe. Godot Game Engine Is Now Open Source. 14 February 2014  [2021-03-02]. （原始内容存档于2020-06-10）.
9. ^ Linietsky, Juan. Godot Engine Reaches 1.0, Releases First Stable. Godot Engine. 2014-12-15  [2019-07-01]. （原始内容存档于2019-07-01）.
10. ^ Linietsky, Juan. Godot 1.1 Out!!. Godot Engine. 2015-05-21  [2019-07-01]. （原始内容存档于2019-07-01）.
11. ^ Godot Game Engine is Conservancy's Newest Member Project.  [13 November 2015]. （原始内容存档于2019-09-18）.
12. ^ Verschelde, Rémi. Here comes Godot 3.2, with quality as priority. Godot Engine. 2020-01-29  [2021-03-22]. （原始内容存档于2021-04-22）.
13. ^ Verschelde, Rémi. Versioning change for Godot 3.x. Godot Engine. 2020-03-17  [2021-03-22]. （原始内容存档于2021-05-15）.
14. ^ Announcing Godot's Graduation from SFC!. Software Freedom Conservancy. 1 November 2022  [2022-11-18]. （原始内容存档于2022-12-01） （英语）.
15. ^ Godot’s Graduation: Godot moves to a new Foundation. Godot Engine. 1 November 2022  [2022-11-18]. （原始内容存档于2023-01-05） （英语）.
16. ^ Godot Release Versions. Godot Release Versions.  [2021-05-10]. （原始内容存档于2022-11-18） （英语）.
17. ^ Engine, Godot. Dev snapshot: Godot 3.6 beta 4. Godot Engine.  [2024-04-23]. （原始内容存档于2024-03-13） （英语）.
18. ^ Dev snapshot: Godot 3.6 beta 4. Godot Engine. 2024-01-25  [2023-08-29]. （原始内容存档于2024-03-13） （英语）.
19. ^ Larabel, Michael. Godot 4.1 Released With More Improvements To This Open-Source Game Engine. Phoronix. 6 July 2023  [9 September 2023]. （原始内容存档于2024-04-17） （英语）.
20. ^ 20.0 20.1 Maintenance release: Godot 4.2.2 & 4.1.4. Godot Engine. 2024-04-17  [2024-04-18]. （原始内容存档于2024-04-22） （英语）.
21. ^ Godot 4.2 arrives in style!. Godot Engine. 2023-11-30  [30 November 2023]. （原始内容存档于2024-05-10） （英语）.
22. ^ Banini, Darío. GPU synchronization in Godot 4.3 is getting a major upgrade. Godot Engine.  [2024-02-21]. （原始内容存档于2024-04-05） （英语）.

## 外部連結[编辑]

* 官方网站（英文）
* Godot Docs文件 （繁體中文）
* Godot Docs文件 （简体中文）
* Godot Docs文件 （英文）

* 查
* 论
* 编

游戏引擎（列表）

* 原始碼移植（英语：Source port）
* 第一人稱射擊遊戲引擎
* 列表（英语：List of first-person shooter engines）
* 遊戲引擎重製（英语：Game engine recreation）
* 列表（英语：List of game engine recreations）
* 遊戲創作系統（英语：Game creation system）
* 遊戲整合開發環境（英语：Game integrated development environment）
* 视觉小说引擎列表
* id Tech（英语：id Tech）

專有軟體|

| 1980s|

* Filmation（英语：Filmation (game engine)）
* Freescape（英语：Freescape）
* Gold Box（英语：Gold Box）
* SCUMM

|

1990s|

* 3D GameStudio（英语：3D GameStudio）
* Clickteam
* Dark Engine（英语：Dark Engine）
* GameMaker
* Genie Engine（英语：Genie Engine）
* GoldSrc
* Jedi（英语：Jedi (game engine)）
* LithTech（英语：LithTech）
* M.U.G.E.N
* Pie in the Sky（英语：Pie in the Sky (game engine)）
* Reality Lab（英语：Reality Lab）
* RenderWare
* RPG製作大師
* Sim RPG Maker（英语：Sim RPG Maker）
* 虚幻引擎
* Virtual Theatre（英语：Virtual Theatre）
* Voxel Space（英语：Voxel Space）
* Zero（英语：Zero (game engine)）
* Zillions of Games

2000s|

* Anvil
* C4 Engine（英语：C4 Engine）
* Chrome Engine
* CryENGINE
* 水晶工具
* Diesel（英语：Diesel (game engine)）
* Ego（英语：Ego (game engine)）
* Essence Engine（英语：Essence Engine）
* Euphoria（英语：Euphoria (software)）
* Flare3D（英语：Flare3D）
* 寒霜引擎
* Gamebryo
* GameSalad（英语：GameSalad）
* HeroEngine（英语：HeroEngine）
* IW（英语：IW (game engine)）
* Leadwerks（英语：Leadwerks）
* Marmalade SDK（英语：Marmalade (software)）
* MT Framework
* PhyreEngine（英语：PhyreEngine）
* Q（英语：Q (game engine)）
* RAGE
* Retro Engine（英语：Retro Engine）
* SAGE
* Shark 3D（英语：Shark 3D）
* Silent Storm engine（英语：Silent Storm engine）
* Source
* Titan（英语：Titan (game engine)）
* Unigine（英语：Unigine）
* Unity
* Vicious Engine（英语：Vicious Engine）
* Vision
* Visual3D Game Engine（英语：Visual3D Game Engine）

2010s|

* 4A Engine（英语：4A Engine）
* Amazon Lumberyard
* Bitsquid（英语：Bitsquid）
* Buildbox
* Construct
* Creation引擎
* Decima
* Defold
* Felgo（英语：Felgo）
* Fox Engine（英语：Fox Engine）
* id Tech 5
* id Tech 6（英语：id Tech 6）
* Ignite（英语：Ignite (game engine)）
* Kynapse（英语：Kynapse）
* 夜光引擎
* NeoX
* Nvidia GameWorks（英语：Nvidia GameWorks）
* Panta Rhei（英语：Panta Rhei (game engine)）
* Pixel Game Maker MV（英语：Pixel Game Maker MV）
* REDengine
* RE引擎
* Snowdrop引擎
* Stencyl（英语：Stencyl）
* Source 2
* UbiArt框架

2020s|

* id Tech 7（英语：id Tech 7）

自由及開源軟體|

| 1970s|

* Z-machine（英语：Z-machine）

|

1990s|

* Adventure Game Studio（英语：Adventure Game Studio）
* Build（英语：Build (game engine)）
* Crystal Space
* 毁灭战士引擎
* Game-Maker（英语：Game-Maker）
* OHRRPGCE（英语：OHRRPGCE）
* 雷神之锤引擎
* id Tech 2
* Stratagus（英语：Stratagus）
* NScripter

2000s|

* Away3D（英语：Away3D）
* Blender Game Engine
* Bork3D Game Engine（英语：Bork3D Game Engine）
* Cocos2d
* Dim3（英语：Dim3）
* Game Editor（英语：Game Editor）
* GDevelop（英语：GDevelop）
* id Tech 3
* id Tech 4
* Irrlicht Engine（英语：Irrlicht Engine）
* jMonkeyEngine（英语：jMonkeyEngine）
* Lightweight Java Game Library（英语：Lightweight Java Game Library）
* Löve（英语：Löve (game engine)）
* OGRE
* Open Wonderland（英语：Open Wonderland）
* Panda3D（英语：Panda3D）
* Papervision3D（英语：Papervision3D）
* Plasma（英语：Plasma (game engine)）
* Platinum Arts Sandbox（英语：Platinum Arts Sandbox）
* Pygame
* Ren'Py
* Scratch
* Solar2D（英语：Solar2D）
* Spring引擎
* Thousand Parsec
* Torque（英语：Torque (game engine)）
* Vassal Engine（英语：Vassal Engine）
* Wintermute Engine（英语：Wintermute Engine）

2010s|

* Delta3D（英语：Delta3D）
* Godot
* GPUOpen（英语：GPUOpen）
* Horde3D（英语：Horde3D）
* 吉里吉里
* libGDX（英语：libGDX）
* Moai（英语：Moai (software)）
* OpenFL（英语：OpenFL）
* ORX（英语：ORX）
* PlayCanvas（英语：PlayCanvas）
* Raylib（英语：Raylib）
* Snap!
* Stencyl（英语：Stencyl）
* Stride（英语：Stride (game engine)）

2020s|

* Open 3D Engine

*[查]: 查看该模板
*[论]: 讨论该模板
*[编]: 编辑该模板