Unity vs Godot:两大游戏引擎之战
Unity vs Godot:两大游戏引擎之战
Unity和Godot是目前最流行的游戏引擎之一。Unity的市场份额超过23%,位居榜首,而Godot的市场份额为3.28%,还有很大的提升空间。但这还不是全部……
游戏引擎也称为游戏框架或游戏架构,是一种软件开发环境,用于为不同的编程语言创建视频游戏。这些引擎带有设置和配置以简化视频游戏开发过程。该引擎由2D或3D图形渲染引擎、人工智能系统、模拟现实生活动作的物理引擎和动画引擎等组成。
虽然有多种游戏引擎可用于游戏开发,但Godot和Unity是比较流行的引擎。但两者哪个更好呢?
Godot
Godot是一个跨功能、开源和免费的游戏引擎,根据MIT许可发布。它由阿根廷软件开发人员Juan Linietsky和Ariel Manzur于2014年开发,可在Linux、Microsoft Windows和BSD等操作系统上运行。除了为PC、Web和移动平台设计2D和3D游戏外,Godot还可用于创建编辑器和其他非游戏软件。Godot的架构是建立在节点的概念之上的,节点又在“场景”中组织起来。场景是可重用、可实例化和可嵌套的节点组。
Godot用户可以选择多种编程语言来创建游戏,包括但不限于GDScript、C++和C#。GDScript是Godot内置的脚本语言,它在语法上类似于Python,但针对Godot的基于场景的架构进行了优化。它有助于指定变量的严格类型。
此外,Godot有一个GDNative工具可以与其他语言(如C和C++)绑定。Godot的其他功能包括灵活的场景系统、具有上下文相关UI的可视化编辑器、持久的实时编辑以及创建自定义工具的能力。
Unity——老将
Unity由Unity Technologies开发,是一款跨平台游戏引擎,于2005年作为Mac OS X游戏引擎首次发布。随着时间的推移,游戏引擎开始支持各种桌面、移动、控制台和虚拟现实平台。它更受iOS和Android手机游戏开发的欢迎。游戏引擎可用于创建3D、2D和其他交互式模拟——除了游戏,Unity已被其他领域采用,如电影制作、汽车、建筑、工程,甚至美国武装部队。它使用Mono在C#中提供主要的脚本API。之前,C#Unity支持Boo,它在Unity 5中被删除,取代了基于Boo的名为UnityScript的JavaScript实现,直到2017年。
对于2D游戏,Unity使用高级2D世界渲染器并允许导入精灵。对于3D游戏,Unity提供了纹理压缩、每个平台的分辨率设置、对凹凸映射、反射映射、屏幕空间环境遮挡、渲染到纹理和全屏后处理效果的支持等功能。
Godot与Unity
首先,在这两个游戏引擎中,Godot被认为对初学者更友好。对于不太熟悉游戏开发经验的用户来说,两者都是好兆头,但Godot提供了一个更顺畅的切入点。这是因为Godot游戏引擎轻量级、体积更小,无需使用第三方IDE即可将编码集成到编辑器中。
基于节点的用户界面使Godot成为创建简单游戏的绝佳工具,然而,Unity更适合开发更复杂的项目。例如,Unity提供更好的3D图形创建和渲染结果,如果想要创建高质量的AAA游戏,这可能会更有用。虽然用户即使使用Godot也可以创建精美的游戏,但这样做需要更多时间。也就是说,Godot的团队正在努力解决这个问题,尤其是与3D功能有关的问题。
就受欢迎程度而言,Unity无疑胜出。它已被用于创建当今已知的一些最著名和最强大的游戏,其中一些示例包括《我们之中》、《堕落的家伙:终极淘汰赛》、《口袋妖怪围棋》、《铁锈》和《天际线》等。Unity游戏引擎获得了加分,因为它可以更轻松地创建小型游戏以及具有更复杂结构的大型游戏。
Unity还拥有更大、更活跃的用户社区基础。也可能是因为Unity的开发比Godot早很多。尽管如此,Unity多年来赢得了游戏社区的信任——由于提供了全面的学习材料和指导,即使是新用户也能轻松浏览它。
Godot的社区规模较小,但由非常活跃的热情开发人员组成。他们不断努力改进平台。据报道,Unity的市场份额超过23%,位居榜首,而Godot的市场份额为3.28%,还有很大的提升空间。