‹›
Vehicles

Ovládání a fyzikální smyčka

Posílá sestavenému nativnímu controlleru normalizovaný throttle, steering, provozní brzdu a handbrake.

V běžném Step eventu nastavte input před jolt_update(). Samostatná vehicle update metoda neexistuje, protože VehicleConstraint se automaticky účastní nativního fyzikálního kroku.

Metody#

MetodaRozsahVrací
set_throttle(value)-1..1 po managed clampBoolean
set_steering(value)-1..1 po managed clampBoolean
set_brake(value)0..1 po managed clampBoolean
set_handbrake(value)0..1 po managed clampBoolean
set_inputs(throttle, steering, brake=0, handbrake=0)Všechny vstupy společněBoolean
GML
// Step event
var throttle = gamepad_axis_value(0, gp_axislv);
var steering = gamepad_axis_value(0, gp_axisrh);
var brake = max(0, gamepad_axis_value(0, gp_axisrv));
var handbrake = gamepad_button_check(0, gp_face1);

if (!car.set_inputs(throttle, steering, brake, handbrake)) {
    show_debug_message(jolt_get_error_message());
}
jolt_update();

Automatická zpátečka#

V automatickém režimu nativní controller interpretuje záporný throttle jako požadavek na zpátečku. V manuálním režimu zvolte záporný převod pomocí set_gear().

Důvody selhání#

  • Vozidlo ještě nebylo sestaveno.
  • Vozidlo, chassis nebo managed world byly zničeny.
  • Low-level volající předal NaN, nekonečno nebo hodnotu mimo rozsah.

Ověřené kontrakty operací#

Následující kontrakty rozlišují jednotky, návratové hodnoty, chyby a životnost podle aktuální implementace. Nevynechávej kontrolu výsledku: false, 0 a undefined mohou mít u různých metod odlišný význam.

Symbol / vlastníkSignaturaKontrakt operace
JoltVehicle.set_inputsJoltVehicle.set_inputs(throttle,steering,brake=0,handbrake=0)Běžící buildnutý vehicle; Boolean. Throttle/steering clamp -1..1, brake/handbrake 0..1. Jednotlivý setter zachová ostatní vstupy; set_inputs má brzdy default 0.
JoltVehicle.set_throttleJoltVehicle.set_throttle(value)Běžící buildnutý vehicle; Boolean. Throttle/steering clamp -1..1, brake/handbrake 0..1. Jednotlivý setter zachová ostatní vstupy; set_inputs má brzdy default 0.