Vehicles

Vozidla

Vytváří nativní kolové vozidlo Jolt Physics 5.6 nad běžným Dynamic JoltBody chassis.

JoltVehicle vlastní VehicleConstraint, WheeledVehicleController a virtuální kola. Jolt řeší odpružení, síly pneumatik, pohon a kontakty uvnitř jolt_update(); GameMaker zajišťuje ovládání a vykreslování.

Z čeho se vozidlo skládá#

  • Jedno existující Dynamic JoltBody bez režimu sensor, které slouží jako chassis.
  • Dvě až třicet dva virtuálních kol. Kola nejsou samostatná rigid bodies.
  • Konfigurace odpružení, řízení, pohonu a brzd pro každé kolo.
  • Nativní motor, převodovka, jeden nebo více diferenciálů a volitelné stabilizátory.
  • Wheel collision tester hledající povrch podle kolizní vrstvy chassis.

Souřadnicový systém#

OsaVýznam pro vozidlo
XLevá/pravá strana chassis. Osa nápravy modelu kola.
YDopředu/dozadu. Lokální +Y je směr dopředu.
ZNahoru/dolů. Odpružení se běžně pohybuje v lokálním -Z.

Doporučený postup#

GML
var chassis = jolt_box_create_dynamic(...);
var car = jolt_vehicle(chassis, options);
car.add_wheel(...);
car.add_wheel(...);
car.build();

// Step event
car.set_inputs(throttle, steering, brake, handbrake);
jolt_update();

Důležitá pravidla vlastnictví#

  • Vozidlo znovu používá své chassis; nevlastní GameMaker proměnnou ani renderovaný model.
  • Konfigurace je draft do zavolání build() a po úspěšném sestavení je neměnná.
  • Zničení chassis zneplatní závislé vozidlo. jolt_stop() ničí vozidla před tělesy a worldem.
  • Při nejistém životním cyklu ověřte vozidlo pomocí is_valid().