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#
| Osa | Význam pro vozidlo |
|---|---|
| X | Levá/pravá strana chassis. Osa nápravy modelu kola. |
| Y | Dopředu/dozadu. Lokální +Y je směr dopředu. |
| Z | Nahoru/dolů. Odpružení se běžně pohybuje v lokálním -Z. |
Doporučený postup#
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().