去年Unity的收费策略风波,很多人一开始只是想路过喷一口Unity,但到最后俨然成为了一场狂欢。很多非主流的以及Unity以外的相对主流的游戏引擎借此机会拉到了不少新用户。
Godot在这场狂欢中无疑吸引了不少开发者的关注。不过为什么是它呢?这个问题我们会在这一系列文章中慢慢找到自己想要的答案。
The Godot Engine is a free, all-in-one, cross-platform game engine that makes it easy for you to create 2D and 3D games. Godot引擎是一款免费、功能齐全、跨平台的游戏引擎。帮助你创作2D和3D游戏。
)。按照法语念法,最后那个t是不发音的。但是大家依然有念成“go dot”的自由。
Different languages have different pronunciations for Godot and we find it beautiful. 不同的语言对于Godot有不同的念法,我们认为这是很美妙的。
Godot认为这种方式是更符合直觉的设计。游戏由场景组成,场景由节点组成。结点自然而然地构成结点树。其他场景也可以嵌入到场景的某一结点上构成场景的一部分。
Godot本身由C++写就。Godot官方支持两种脚本语言:GDScript和C#。GDScript是专为Godot开发的脚本语言,语法和Python高度相似,并提供了诸多方便Godot的语法糖。C#是大家的老朋友了,Unity也采用C#作为脚本语言。
除此之外,Godot提供了GDExtension(3.x为GDNative)——一种让引擎得以和native库交互的技术。通过社区实现的各种其他语言的绑定,你可以用更多的语言来编写代码让Godot调用。诸如rust、haxe、swift均有此类实现。
Godot有专门的2D渲染引擎,可以使用“‘线D、基于像素的单位系统”,不需要考虑Z轴的存在。
Godot内置有大量便于2D游戏开发的工具,tile编辑器、tile map编辑器、帧动画等需求都有内置支持。
Godot的3D游戏开发依然基于场景和结点系统。开发时可以根据需求选择基于OpenGL和Vulkan的不同的渲染器,支持各种现代特性(至少是4.0之后的事)。
Godot早期是由两位原作者Juan Linietsky和Ariel Manzur开发的,于2014年开源。
一般的开发者有足够的自由来使用Godot,对于当时陷入计费风波的Unity来说确实有吸引力。
好吧,跨平台对于游戏引擎来说更像是刚需和基本要求。不过Godot也有它的惊喜。比如它可以在浏览器中运行:
上方是最新稳定版本,下方是LTS(长期支持)版本,也就是3.x。目前对于新入坑来说,九游官方平台应当优先考虑最新版。
目前同一版本号的Godot又会分为两个版本。图中上方是“标准版”,下方的
要使用C#编写脚本必须用.NET版,但是.NET版也支持使用GDScript,这点不用担心。开发者表示未来可能会解决分两个版本的问题。
Godot用的是标准的.NET实现。.NET版需要.NET SDK的支持。你也可以无压力地用各种nuget包。
但是后面一系列文章主要用GDScript讲解以面向更多读者,C#语言基础不在本系列文章讨论之内。
这是安装程序吗?不是,这就是Godot release的所有内容。解压到任何地方,点击上面那个就可以启动Godot(
后缀的可以从控制台启动,九游官方平台在控制台中显示各类输出信息,常规开发不需要使用)。
没错,这一个文件就是Godot的全部,你可以到处移动到处用。所有的功能都在里面。没有安装,没有注册登录。如果是其他成熟的商业引擎,注册登录下载安装一套操作下来,你估计已经用Godot做了个小游戏了()。
机核从2010年开始一直致力于分享游戏玩家的生活,以及深入探讨游戏相关的文化。我们开发原创的播客以及视频节目,一直在不断寻找民间高质量的内容创作者。
我们坚信游戏不止是游戏,游戏中包含的科学,文化,历史等各个层面的知识和故事,它们同时也会辐射到二次元甚至电影的领域,这些内容非常值得分享给热爱游戏的您。