Menu
CoddyTech

CharacterBody2D

Parte de la sección Entrada y movimiento del Journey de Godot de Coddy. Lección 7 de 28.

Un Node2D atraviesa las paredes. Un CharacterBody2D choca con las cosas. En la pestaña Scene, el Hero ahora es un CharacterBody2D. Su hijo CollisionShape2D es un círculo, el tamaño sólido del héroe. Las paredes y el pilar también tienen formas de colisión.

Un cuerpo tiene una velocity, un Vector2 en píxeles por segundo. Asignarle un valor no mueve nada. move_and_slide() mueve el cuerpo según su velocidad durante un fotograma y lo detiene al encontrar algo sólido:

func _physics_process(delta):
	velocity = Vector2(150, 0)
	move_and_slide()

Mueve los cuerpos en _physics_process, que se ejecuta al ritmo de la física. move_and_slide() aplica el tiempo del fotograma, así que nunca multipliques velocity por delta.

challenge icon

Desafío

Fácil

La velocity del héroe se establece en 150 píxeles por segundo hacia la derecha. Llama a move_and_slide() para que se mueva y se detenga en el pilar.

Pruébalo tú mismo

extends CharacterBody2D

func _physics_process(delta):
	velocity = Vector2(150, 0)
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Entrada y movimiento

Practica por tu cuenta: Playground de Godot