Menu
CoddyTech

Operações com Vector2

Parte da seção Nós e cenas do Journey de Godot da Coddy. Lição 16 de 28.

Você pode fazer cálculos com um Vector2. Somar dois vetores soma os valores de x e os valores de y:

Vector2(100, 50) + Vector2(10, 5)   # (110, 55)

Multiplicar por um número multiplica ambos: Vector2(100, 50) * 2 é (200, 100). É assim que velocity * delta funciona.

O comprimento de um vetor é a distância que ele alcança em linha reta. .length() calcula esse valor:

var step = Vector2(3, 4)
print(step.length())   # 5.0

Para uma velocidade, o comprimento é a velocidade real. Um robô que se move 120 pixels para a direita e 90 para cima a cada segundo percorre 150 pixels por segundo.

challenge icon

Desafio

Fácil

Imprima a velocidade real do robô e, em seguida, faça-o voar.

  1. Em _ready(), imprima "Speed: " e o comprimento de velocity, com .length().
  2. Em _process(), mova o robô por velocity a cada segundo, usando delta.

Pressione “Jogar”: o console mostra Speed: 150.0 e o robô voa para cima e para a direita. Depois, pressione “Verificar”.

Experimente você mesmo

extends Node2D

var velocity = Vector2(120, -90)

func _ready():
	pass

func _process(delta):
	pass

Todas as lições de Nós e cenas

Pratique por conta própria: Playground de Godot