Menu
CoddyTech
flag Ru iconРусскийdown icon

Математика с Vector2

Часть раздела Узлы и сцены путешествия по Godot на Coddy. Урок 16 из 27.

С 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 пикселей в секунду.

challenge icon

Задание

Легко

В скрипте есть переменная velocity — Vector2(120, -90).

  • Когда игра запускается, выведите реальную скорость робота — длину вектора: Speed: 150.0.
  • На каждом кадре перемещайте робота со скоростью velocity в секунду.

Попробуйте сами

extends Node2D

var velocity = Vector2(120, -90)

func _ready():
	pass

func _process(delta):
	pass
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Узлы и сцены

Потренируйтесь самостоятельно: Песочница Godot