摘要: (惯例感谢godot,线性代数大学必修课~~~~~~) 简介 本教程是一个简短而实用的线性代数介绍,因为它适用于游戏开发。线性代数是研究向量及其用途的学科。矢量在二维和三维开发中都有许多应用,Godot对它们的应用非常广泛。要成为一名优秀的游戏开发者,对向量数学的理解是必不可少的。 注解 本教程 不 阅读全文
posted @ 2018-12-30 21:32 宸少凌 阅读(984) 评论(0) 推荐(0) 编辑
摘要: GDScript offers a feature called format strings, which allows reusing text templates to succinctly create different but similar strings. 格式化字符串就像正常的字符 阅读全文
posted @ 2018-12-30 19:48 宸少凌 阅读(711) 评论(0) 推荐(0) 编辑
摘要: (惯例感谢godot开发组~~·) 缩进 缩进类型:Tabs (编辑器默认) 缩进大小:4 (编辑器默认) 每个缩进级别必须大于包含它的代码块。 良好的: for i in range(10): print("hello") 糟糕的: for i in range(10): print("hello 阅读全文
posted @ 2018-12-30 19:12 宸少凌 阅读(411) 评论(0) 推荐(0) 编辑
摘要: (开头惯例感谢godot开发者团队~~~~) 计时器例子 要查看信号是如何工作的,让我们尝试使用 Timer 节点。使用一个节点和两个子节点来创建一个新场景:一个是:Timer和一个 Sprite。您可以使用Godot图标作为Sprite的纹理,或者其他你喜欢的任意图像。 你的场景树应该是这样的: 阅读全文
posted @ 2018-12-30 18:40 宸少凌 阅读(510) 评论(0) 推荐(0) 编辑
摘要: Godot有一个“脚本类”的功能,可以使用编辑器注册单个脚本。 默认情况下,你只能通过直接加载文件访问未命名的脚本。 你可以命名一个脚本,并在编辑器中将脚本注册为带有``class_name``关键字后跟随类名的指定类型。 你还可以把一张图片添加一个逗号和图片的路径来当做图标来使用。 然后,你可以在 阅读全文
posted @ 2018-12-30 18:28 宸少凌 阅读(321) 评论(0) 推荐(0) 编辑
摘要: 本文对godot必须掌握的概念进行罗列,以便于浏览学习: (随时补充) 1.场景 2.节点 X:场景与节点 3.脚本(建议直接学习GDscript,当然掌握C#也可以) 4.类 阅读全文
posted @ 2018-12-30 18:16 宸少凌 阅读(350) 评论(0) 推荐(0) 编辑
摘要: 以下所描述的这些可覆写的函数,能够应用于节点: GDScript func _enter_tree(): # When the node enters the _Scene Tree_, it becomes active # and this function is called. Childre 阅读全文
posted @ 2018-12-30 17:48 宸少凌 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 随着节点数的增加,一个有用的管理方式是把节点添加到组里。 有两种方法可以做到这一点。第一个通过UI实现,在Node面板下的Groups按钮: And the second way is from code. One example would be to tag nodes which are en 阅读全文
posted @ 2018-12-30 16:46 宸少凌 阅读(255) 评论(0) 推荐(0) 编辑
摘要: Godot中的许多动作是由回调函数或虚函数触发,所以不需要编写那些总是运行的代码。 但是,在每一帧上都需要处理脚本仍然很常见。有两种类型的处理:空闲处理和物理处理。 当 Node._process() 方法在函数中被定义时,处理流程就会被激活.。可以通过 Node.set_process() 函数来 阅读全文
posted @ 2018-12-30 16:31 宸少凌 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 通常希望发送当实例中发生某事的通知。 GDScript支持创建内置的Godot信号。 使用 signal 关键字可以轻松地在GDScript中声明信号。 # No arguments. signal your_signal_name # With arguments. signal your_sig 阅读全文
posted @ 2018-12-30 14:51 宸少凌 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 知道类的成员变量何时因某种原因发生变化通常很有用。也可能需要以某种方式封装其访问。 为此,GDScript使用 setget 关键字提供了一个 setter/getter 语法。在变量定义后可直接使用: var variable = value setget setterfunc, getterfu 阅读全文
posted @ 2018-12-30 14:40 宸少凌 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 导出数组是可行的,但有一个重要的注意事项:虽然常规数组是在每个类实例本地创建的,但导出的数组是在所有实例之间“共享”的。这意味着在一个实例中编辑它们将导致在所有其他实例中更改它们。导出的数组可以有初始化器,但它们必须是常量表达式。 # Exported array, shared between a 阅读全文
posted @ 2018-12-30 14:11 宸少凌 阅读(578) 评论(0) 推荐(0) 编辑
摘要: 导出位标志 作为位标志的整数可以在一个属性中存储多个“true”/“false”(boolean)值。通过使用导出提示’ ‘ int, FLAGS ‘ ‘,它们可以从编辑器中设置: # Individually edit the bits of an integer. export(int, FLA 阅读全文
posted @ 2018-12-30 14:05 宸少凌 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 以文件形式存储的类被视为 resources。必须从磁盘加载它们,才能在其他类中访问它们。这可以使用 load 或 preload 函数来完成(见下面)。加载类资源的实例化是通过调用类对象上的 new函数来完成的: # Load the class resource when calling loa 阅读全文
posted @ 2018-12-30 13:57 宸少凌 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 继承 类(存储为文件)可以继承 一个全局的类 另一类文件 另一个类文件中的内部类。 不允许多重继承。 继承使用 extends 关键字: # Inherit/extend a globally available class. extends SomeClass # Inherit/extend a 阅读全文
posted @ 2018-12-30 13:42 宸少凌 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 默认情况下,所有脚本文件都是未命名的类。在这种情况下,只能使用文件的路径引用它们,使用相对路径或绝对路径。例如,如果您将脚本文件命名为``character.gd`` # Inherit from Character.gd extends res://path/to/character.gd # L 阅读全文
posted @ 2018-12-30 13:32 宸少凌 阅读(205) 评论(0) 推荐(0) 编辑
摘要: (我对部分段落进行翻译) A match statement is used to branch execution of a program. It’s the equivalent of the switch statement found in many other languages, bu 阅读全文
posted @ 2018-12-30 12:23 宸少凌 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 要遍历一个范围(如数组或表),使用 for 循环。在数组上迭代时,当前数组元素存储在循环变量中。在遍历字典时, index 存储在循环变量中。 (in 内容测试) for x in [5, 7, 11]: statement # Loop iterates 3 times with 'x' as 5 阅读全文
posted @ 2018-12-30 11:07 宸少凌 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 简单的条件是通过使用 if/else/elif 语法创建的。条件的括号是允许的,但不是必需的。考虑到基于表的缩进的性质,可以使用 elif 而不是 else/if 来维持缩进的级别。 if [expression]: statement(s) elif [expression]: statement 阅读全文
posted @ 2018-12-30 10:57 宸少凌 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 与Python相反,函数不是GDScript中的第一类对象。这意味着它们不能存储在变量中,不能作为参数传递给另一个函数,也不能从其他函数返回。这是出于性能原因。 若要在运行时按名称引用一个函数(例如,将其存储在一个变量中,或将其作为参数传递给另一个函数),必须使用``call``或``funcref 阅读全文
posted @ 2018-12-30 10:47 宸少凌 阅读(318) 评论(0) 推荐(0) 编辑

万年以来谁著史,三千里外欲封侯