Godot学习笔记2——GDScript变量与函数

目录

一、代码编写界面

二、变量

三、函数

四、变量的类型


Godot使用的编程语言是GDS,语法上与python有些类似。

一、代码编写界面

在新建的Godot项目中,点击"创建根节点"中的"其他节点",选择"Node"。

点击场景界面右上角的绿色加号,路径处重新命名,模板选择"Empty",即可进入代码编写界面。

二、变量

在GDS中,我们使用"var"来定义一个变量。变量的命名规则与大多数语言一致,必须以字母、下划线开头,组成变量名的只能有字母、数字、下划线。

如果违反了变量命名规则,编译器会在代码编写区域的底部发出错误提示:

需要注意的是,变量之间的计算与转换只能在函数体内部进行,如果在外部,则会报错:

不同的变量分属不同的节点,在计算使用时需要强调是属于谁的变量。像这里我们的变量前应该有一个"self."来表示这是节点自己的变量,但"self."一般可以省略,所以并不是我们这里没有指定变量所属。

三、函数

在GDS中,我们使用"func"来定义一个函数:

在这里,"_enter_tree()"是一个特殊的函数,它会在节点进入场景树时被自动调用。

我们可以在代码编写框的右上角点击"搜索帮助",输入"_enter_tree",即可查看文档中对改函数的介绍:

一般来讲,GDS中由系统自带的函数都具有与之相同的命名方式,即下划线开头。

在上述代码中,冒号后面的内容拥有了一个缩进,也就是一个"tab"键的长度。拥有同一级缩进的代码块将被视为在同一级。同时,GDS对代码的缩进非常敏感,少一个空格或多一个空格都是会报错的,这点与python非常像:

缩进错误

在函数体中,我们首先使用了"print"函数,此函数也是提前封装好的,我们将鼠标移动到"print"处右键,选择"查找符号",即可看到对该函数的介绍:

函数体最后一行"pass",代表函数从这一行结束,一般函数的最后都要加这一句代码。

此时,点击引擎右上角的开始按钮,即可看到控制台输出了变量"a"所代表的值1:

四、变量的类型

在 GDS中,变量有四种类型,分别是:

  • int 整型
  • float 浮点型
  • string 字符串型
  • bool 布尔型

我们在GDS中定义了如下四种变量:

在GDS中,给变量赋值通常不需要先声明变量类型,系统会自动识别变量类型并进行动态更改。

需要注意的是,字符串类型变量赋值的时候需要把字符串两边用双引号括起来,布尔型变量只有两个值:"true"或者"false"。

在下方函数中,我们执行了一行把c的值赋值给a的代码,如果是在C语言环境下,运行会报错,但我们在Godot中运行看一下结果:

可以看到,"print"打印的是"Hello",证明在GDS中变量并没有严格的类型界定。

我们也可以手动锁死每个变量的类型,只需在变量赋值时在等号前面加冒号和变量类型即可:

可以看到,此时函数体中出现了报错,说明a和c的类型已经被强制界定了。

相关推荐
一只小菜鸡..2 分钟前
241126学习日志——[CSDIY] [ByteDance] 后端训练营 [19]
学习
Clockwiseee15 分钟前
JS原型、原型链以及原型链污染学习
javascript·学习·原型模式
qq_2147826119 分钟前
ChatGPT如何辅助academic writing?
人工智能·学习·chatgpt
Octopus207732 分钟前
【C++】读取数量不定的输入数据
开发语言·c++·笔记·学习
Lostgreen37 分钟前
计算机网络----基本概念
网络·笔记·学习·计算机网络
孤邑1 小时前
【Linux】网络通信
linux·服务器·网络·笔记·学习
Hacker_xingchen1 小时前
Web 学习笔记 - 网络安全
前端·笔记·学习
PaLu-LI1 小时前
ORB-SLAM2源码学习:Initializer.cc:Initializer::CheckFundamental地图初始化——检查基础矩阵F并评分
c++·opencv·学习·线性代数·ubuntu·计算机视觉·矩阵
你疯了抱抱我1 小时前
【VRChat 改模】开发环境搭建:VCC、VRChat SDK、Unity 等环境配置
unity·游戏引擎·vr·vrchat
9毫米的幻想1 小时前
【Linux系统】—— 基本指令(四)
linux·c语言·c++·学习