Vector2 数学运算
本课属于 Coddy Godot 学习旅程的“节点与场景”单元。第 16 课,共 28 课。
你可以用 Vector2 进行数学运算。两个向量相加时,x 值相加,y 值也相加:
Vector2(100, 50) + Vector2(10, 5) # (110, 55)乘以一个数字时,两个分量都会相乘:Vector2(100, 50) * 2 的结果是 (200, 100)。velocity * delta 就是这样运作的。
向量的长度表示它沿直线延伸的距离。.length() 可以计算出这个值:
var step = Vector2(3, 4)
print(step.length()) # 5.0对于速度向量,长度就是真实速度。机器人每秒向右移动 120 像素、向上移动 90 像素,那么它每秒会移动 150 像素。
挑战
简单打印机器人的实际速度,然后让它飞起来。
- 在
_ready()中,使用.length()打印"Speed: "和velocity的长度。 - 在
_process()中,使用delta让机器人每秒移动velocity对应的距离。
按下运行:控制台会显示 Speed: 150.0,机器人会向右上方飞去。然后点击检查。
亲手试试
extends Node2D
var velocity = Vector2(120, -90)
func _ready():
pass
func _process(delta):
pass
节点与场景中的所有课
自己练习: Godot 在线编辑器