Menu
CoddyTech

Guidare

Lezione 1 di 20 del corso Gioco Godot: Circuito al neon di Coddy.

In questo corso realizzi un intero gioco in una lezione: un gioco di corse al neon visto dall’alto. Gareggi contro tre auto rivali per tre giri su una pista illuminata.

Il progetto include tre script: car.gd sull’auto, rival.gd per le auto rivali e race.gd per la gara. Ci sono anche altre due parti già fornite e non visibili: la pista, che disegna la strada e risponde a domande su di essa, e la scena. Non dovrai modificarle.

Oggi l’auto impara a guidare. Mantiene una velocity: quanti pixel si sposta ogni secondo e in quale direzione. La direzione verso cui punta l’auto si ottiene trasformando la sua rotation in una direzione:

var forward := Vector2.RIGHT.rotated(rotation)

Quando tieni premuto il tasto Su, la velocità aumenta in quella direzione di accel al secondo. Input.get_action_strength vale 1.0 mentre il tasto è premuto e 0.0 quando non lo è:

var throttle := Input.get_action_strength("move_up")
velocity += forward * throttle * accel * delta
velocity = velocity.limit_length(max_speed)
position += velocity * delta

limit_length mantiene la velocità a max_speed o al di sotto. Moltiplicare per delta, il tempo in secondi trascorso dall’ultimo fotogramma, mantiene la velocità uguale sia su uno schermo veloce sia su uno lento.

challenge icon

Sfida

Facile
  1. In car.gd, sostituisci pass in _physics_process con le righe qui sopra.
  2. Infine, fai brillare lo scarico mentre guidi: $Exhaust.emitting = throttle > 0.0.
  3. Premi «Gioca» e tieni premuto il tasto Su (o W).

Provalo tu

extends Node2D

@export var accel := 260.0
@export var max_speed := 200.0

var velocity := Vector2.ZERO


func _physics_process(delta: float) -> void:
	pass  # drive here

Tutte le lezioni di Gioco Godot: Circuito al neon

Esercitati da solo: Playground Godot