场景与节点¶
简介¶

试想一下您不再是一个游戏开发者。相反地,您是一位厨师!把您时髦的着装换成无檐帽和双排扣夹克。现在,您是在为您的客人打造一个美味的菜谱而不是在做游戏。
那么,厨师如何制作菜谱呢?菜谱分为两个部分:第一部分是成分,第二部分是准备它的说明。这样,任何人都可以按照菜谱来品味你的宏伟创作。
在Godot中制作游戏感觉和这种方式相同。使用这个引擎感觉就像是在一个厨房里。在这个厨房里,节点 就是装满了用于烹饪的新鲜材料的冰箱。
有很多种类型的节点,有的显示图像、有的播放声音、有的节点显示3D模型等等。它们有数十个。
节点¶
但让我们从基础开始。节点是创建游戏的基本构建块。如上所述,一个节点可以执行各种特定的功能。但是,任何给定节点始终具有以下属性:
拥有名称。
具有可编辑的属性。
可以接收回调以处理每个帧。
可以被扩展(以具有更多功能)。
可以作为子节点被添加到其他节点上。

最后一点很重要。节点能够持有其他节点作为子节点。以这种方式编排时,这些节点就会变成一棵 树。
在Godot中,以这种方式来编排节点的特点为组织项目创造了一个强有力的工具。因为不同的节点有不同的功能,将它们组合起来则允许创建更多复杂的功能。
如果现在没有领悟它,不要担心。我们会再接下来几节里继续探讨。目前要记住最重要的一点是:有节点这个东西存在,并且能够按这种方式来编排。
场景¶

既然现在已经定义了节点的概念,那么下一个合逻辑的步骤就是解释场景是什么了。
一个场景是由一组分层组织(以树形方式)的节点组成。此外,一个场景:
始终有 一个 根节点。
能够被保存到磁盘上,也能被载入回来。
能够被 实例化 (稍后详细说明)。
运行一个游戏意味着运行一个场景。一个项目可以有多个场景,但是为了游戏的启动,必须有一个作为主场景。
本质上,Godot编辑器就是一个 场景编辑器 。它有很多用于编辑2D和3D场景以及用户界面的工具,但是编辑器是基于编辑场景及构成场景的节点的概念的。
编辑器¶
打开您在 :ref:`doc_intro_to_the_editor_interface`中创建的项目,或创建一个新项目。这将打开Godot编辑器:

正如前面提到的,在Godot做游戏感觉就像在厨房,所以让我们打开冰箱,为项目添加一些新的节点。我们将以在屏幕上显示“Hello World”消息开始。
为此,我们需要添加 Label(标签)节点。点击场景面板左上角的“添加子节点”按钮(加号图标)。这是往场景中添加新节点的主要方式,会把新建的节点加到当前所选节点下,成为其子节点(如果是空场景,新建节点则会成为根节点)。
注解
在(没有根节点的)空场景中,场景面板会显示一些快速添加根节点的选项。"2D 场景"会添加 Node2D 节点,"3D 场景"会添加 Spatial 节点,"用户界面"会添加 Control 节点,"自定义节点"则会让你自己选择节点类型(和点击"添加子节点"按钮的效果是一致的)。点击星形按钮可以切换是否显示收藏的节点。
此处的预设仅仅是为了方便,而不是对各类场景的强制要求。不是所有的 3D 场景都要以 Spatial 节点为根节点,同样,GUI 和 2D 场景的根节点也不一定要是 Control 节点和 Node2D 节点。
所以,往这个场景里添加标签节点的话,无论是点击自定义节点按钮,还是点击顶部的添加节点按钮都可以。而如果是往非空场景里添加子节点,就得使用添加节点按钮。

这将会打开创建节点对话框,展示了一长串能够被创建的节点列表:

在这里,先选择 Label
节点。直接搜索它可能是最快捷的方式:

最终,创建了一个标签!当创建按钮被按下时,很多事情就发生了:

首先,场景更改为2D编辑器(因为标签是一个2D节点类型),并且标签出现在视图的左上角,处于选中状态。
该节点出现在场景树编辑面板中,标签的属性出现在检查器面板中。
下一步就是去改变标签的 文本
属性了,我们来把它改成“Hello,World!”:

好了,一切都已准备就绪,可以来运行场景了!在顶栏按下 PLAY SCENE按钮(或按 F6 ):

然后……哎呀。

场景需要被保存才能被运行,所以在
中将场景保存成文件如Hello.tscn:
然后,有趣的事情发生了。这个文件对话框是一个特别的文件对话框,只允许保存在项目内。项目根目录是 res://
,意为“资源路径”(resource path)。这也就意味着,文件只可以被保存到项目的内部。以后,当在Godot进行文件操作的时候,记住 res://
就是资源的路径,无论哪种平台和安装位置,它都是定位游戏内部的资源文件位置的方式。
在保存场景并再一次按下运行场景之后,“Hello World”演示示例应该最终被执行了:

成功!
注解
如果这不能立即工作并且在至少一台显示器上有hiDPI显示,请转到
然后在 Dpi 下启用 允许Hidpi。配置项目¶
好了,是时候配置项目了。现在,唯一运行某些东西的方式就是执行当前的场景。然而,可能有多个场景,因此其中一个必须被设定为主场景。这个场景是将会在项目运行时被载入的场景。
这些设置将全部被存放在 project.godot
文件中,一个 win.ini
格式的普通文本文件(以便编辑)。在这个文件中有数十个设置可以被修改,来更改项目的执行方式。为了简化此过程,Godot提供了项目设置对话框,作为编辑 project.godot
文件的前端。
要访问这个对话框,选择
。现在就试试吧。窗口打开后,让我们选择一个主场景。定位到 Hello.tscn
。

现在,通过此更改,当您按常规播放按钮(或 F5)时,无论正在编辑哪个场景,该场景都将运行。
项目设置对话框提供了许多能够被保存至 project.godot
文件的选项并且显示出了它们的默认值。当您改变了一个值,一个对勾被标记在属性名的左侧。这意味着这个属性将被保存到 project.godot
文件中并被记住。
另外,还可以使用 ProjectSettings 单例在运行时来添加自定义配置选项,并读取它们。
未完待续...¶
这篇教程谈论了“场景和节点”,但是目前为止,还只有 一个 场景和 一个 节点!别担心,下一篇教程将会展开讨论…