可视化脚本入门

与Godot中的所有内容一样, 我们优先考虑良好的体验, 而不是复制或集成可能无法很好地适应当前工作流程的第三方解决方案. 这导致我们编写了自己的版本, 我们认为此功能最适合引擎使用的版本.

在 Godot 中,Visual Script 与在编辑器选项卡中的常规脚本配合得很好

../../../_images/visual_script1.png

实际上, 可视化脚本与Godot的集成是如此之好, 以至于很难相信仅在3.0版中才添加了它. 这是因为, 在编辑时, 其余的Godot面板和停靠面板就像一个调色板一样, 你可以从中将各种信息拖放到脚本画布上:

../../../_images/visual_script2.png

创建脚本

创建脚本的工作方式与其他脚本语言相同: 选择场景中的任何节点, 然后按场景树面板右上角的 新建脚本 按钮:

../../../_images/visual_script3.png

打开后,必须从下拉列表中选择 Visual Script 脚本类型。脚本扩展名必须为 .vs(Visual Script 专属!)。

../../../_images/visual_script4.png

最后, 脚本编辑器将打开, 允许开始编辑可视脚本:

../../../_images/visual_script5.png

添加函数

与其他可视化脚本实现不同,Godot中的可视化脚本重度基于功能. 这是因为它使用与其他脚本引擎相同的接口与引擎进行通信. 在Godot中, 脚本接口是通用的, 并且所有实现都遵循它.

函数是连接了节点的单个画布.

单个脚本可以包含许多函数, 每个函数都有自己的画布, 从而允许进行更多的组织.

在脚本中添加函数的主要方法有三种:

重写虚函数

Godot 中大多数类型的节点和其他类型的对象都包含虚函数。这些函数会在发生某些情况时被调用(运行你的代码),并且可以在参考中查找这些函数。当按下成员面板中的 Override(覆盖)图标时,将列出虚函数:

../../../_images/visual_script6.png

在以下示例中, 将在节点被加载并被添加到运行场景时执行一个函数. 为此, _ready() 虚函数将被重写:

../../../_images/visual_script7.png

最后, 一个画布出现在这个函数上, 显示重写:

../../../_images/visual_script8.png

由于某些函数希望你返回值, 因此它们还会在应该提供该值的地方, 添加一个返回节点:

../../../_images/visual_script9.png

将信号连接到函数

当某些事情发生时, 树中的节点会发出信号.Godot将信号用于各种事物. 一个典型的例子是一个按钮, 当实际按下按钮时会发出 按下 信号.

为此, 必须选择一个节点并打开节点选项卡. 这将允许检查信号. 一旦它们被显示, 连接 按下 信号:

../../../_images/visual_script10.png

这将打开连接对话框. 在此对话框中, 你必须选择信号要被连接到的节点, 以及将接收信号的函数:

../../../_images/visual_script11.png

如果正确完成, 将在我们的脚本中创建一个新函数, 并自动将一个信号连接到它:

../../../_images/visual_script12.png

手动创建一个函数

创建函数的最后一种方法是手动完成. 一般来说, 除非您真的需要, 否则这是不常见的. 当另一个(或相同)脚本手动调用自定义函数时, 它们会起作用. 这样做的主要用例是, 将一个较大的函数分解为几个可管理的块, 并重新使用可视化代码.

要手动创建函数, 请按下 加号 按钮, 然后将添加一个具有默认名称的新函数:

../../../_images/visual_script13.png

这将添加一个新函数, 只需双击其名称即可重命名该函数:

../../../_images/visual_script14.png

要编辑此函数可以获得的“参数”(调用此函数时传递给它的值),只需点击 Function 节点并查看检查器:

../../../_images/visual_script15.png

关于这一点的更多内容, 将在本文后面解释.