本文为Google Translate英译中结果,DrGraph在此基础上加了一些校正。英文原版页面:Overview of Godot's key concepts — Godot Engine (stable) documentation in English
Godot 关键概念概述¶
每个游戏引擎都围绕您用来构建应用程序的抽象展开。在 Godot 中,游戏是一棵节点树,您可以将它们分组到场景中。然后,您可以连接这些节点,以便它们可以使用信号进行通信。
这是您将在这里学习的四个概念(DrGraph注:节点、树(后面也称场景树)、场景、信号)。我们将简要地看一下它们,让您了解引擎的工作原理。在入门系列中,您将在实践中使用它们。
场景Scenes¶
在 Godot 中,您可以在可重复使用的场景中分解游戏。场景可以是角色、武器、用户界面中的菜单、单个房屋、整个关卡或您能想到的任何东西。Godot的场景很灵活;它们在其他一些游戏引擎中充当预制件和场景的角色。
您还可以嵌套场景。例如,您可以将您的角色放在一个关卡中,然后拖放一个场景作为它的子级。
节点Nodes¶
一个场景由一个或多个节点组成。节点是游戏中最小的构建块,您将它们排列成树。这是角色节点的示例。
上图示例中,展示了一个
名为“Character”的CharacterBody2D
节点,它由一个Camera2D节点、
一个Sprite2D节点
和一个CollisionShape2D节点组成
。
注:节点名称以“2D”结尾,因为这是一个 2D 场景。他们的 3D 对应物的名称以“3D”结尾。请注意,从 Godot 4 开始,“空间”节点现在称为“Node3D”。
请注意节点和场景在编辑器中看起来是一样的。当您将节点树保存为场景时,它会显示为单个节点,其内部结构隐藏在编辑器中。
Godot 提供了一个广泛的基本节点类型库,您可以组合和扩展以构建更强大的节点类型。2D、3D 或用户界面,您将使用这些节点执行大多数操作。
场景树the scene tree¶
您的所有游戏场景都集中在场景树中,实际上是一棵场景树。由于场景是节点树,场景树也是节点树。但是从场景的角度来考虑您的游戏会更容易,因为它们可以代表角色、武器、门或您的用户界面。
信号Signals¶
当某些事件发生时,节点会发出信号。此功能允许您使节点通信而无需在代码中硬连接它们。它为您构建场景的方式提供了很大的灵活性。
注:信号是 Godot 版本的观察者模式。您可以在这里相关信息: https ://gameprogrammingpatterns.com/observer.html
例如,按钮在按下时发出信号。您可以连接到此信号以运行代码以响应此事件,例如开始游戏或打开菜单。
其他内置信号可以告诉您两个物体何时发生碰撞、角色或怪物何时进入给定区域等等。您还可以定义适合您的游戏的新信号。
总结¶
节点、场景、场景树和信号是 Godot 中您将一直操作的四个核心概念。
节点是游戏的最小构建块。您将它们组合起来创建场景,然后将这些场景组合并嵌套到场景树中。然后,您可以使用信号使节点对其他节点或不同场景树分支中的事件做出反应。
在这个简短的描述之后,您可能有很多问题。耐心等待我们,因为您将在整个入门系列中得到许多答案。