‹
Blender a integrace

Nastavení a orientace kol

Používejte konfigurace kol opakovaně a před buildem nastavte dopředné a svislé osy vozidla i kol.

Ověřeno podle zdrojů projektu 19. září 2026.

Syntax#

Syntax
jolt_vehicle_wheel(local_x, local_y, local_z);
car.add_wheel(wheel_settings);
car.set_forward(x, y, [z]);
car.set_orientation(fx, fy, fz, [ux], [uy], [uz]);

jolt_vehicle_wheel vrací JoltVehicleWheelSettings, běžnou konfiguraci bez fyzikálního tělesa a nativního zdroje. Settery vracejí objekt nastavení pro řetězení. Validace probíhá při car.add_wheel(settings), které konfiguraci kopíruje a vrátí číselný index kola. Pozdější změny nastavení připojená kola nemění. Původní add_wheel(x,y,z,options) zůstává podporované.

Metody nastavení#

API / poleVýznam a pravidla
JoltVehicleWheelSettings.set_position(x,y,z)Lokální závěsný bod vůči tělesu.
JoltVehicleWheelSettings.set_radius(value)Nastaví stávající volbu kola radius; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_width(value)Nastaví stávající volbu kola width; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_steering(value)Nastaví stávající volbu kola steering; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_driven(value)Nastaví stávající volbu kola driven; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_brake(value)Nastaví stávající volbu kola brake; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_handbrake(value)Nastaví stávající volbu kola handbrake; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_max_steering_angle(value)Nastaví stávající volbu kola max_steering_angle; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_inertia(value)Nastaví stávající volbu kola inertia; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_angular_damping(value)Nastaví stávající volbu kola angular_damping; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_max_brake_torque(value)Nastaví stávající volbu kola max_brake_torque; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_max_handbrake_torque(value)Nastaví stávající volbu kola max_handbrake_torque; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_suspension_min(value)Nastaví stávající volbu kola suspension_min; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_suspension_max(value)Nastaví stávající volbu kola suspension_max; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_suspension_frequency(value)Nastaví stávající volbu kola suspension_frequency; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_suspension_damping(value)Nastaví stávající volbu kola suspension_damping; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_suspension_preload(value)Nastaví stávající volbu kola suspension_preload; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_longitudinal_friction(value)Nastaví stávající volbu kola longitudinal_friction; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_lateral_friction(value)Nastaví stávající volbu kola lateral_friction; stejné jednotky a validace jako options v add_wheel.
JoltVehicleWheelSettings.set_suspension_direction(x,y,z)Explicitní směr zavěšení.
JoltVehicleWheelSettings.set_suspension_force_point(x,y,z)Explicitní lokální bod síly zavěšení.
JoltVehicleWheelSettings.set_forward(x,y,z=0)Dopředný směr kola, výchozí up +Z.
JoltVehicleWheelSettings.set_orientation(fx,fy,fz,ux=0,uy=0,uz=1)Dopředná/svislá osa kola; steering axis nastaví na up. Směr zavěšení je samostatný.
JoltVehicle.set_forward(x,y,z=0) / JoltVehicle.set_orientation(fx,fy,fz,ux=0,uy=0,uz=1)Výsledek Boolean; nastavit před přidáním prvního kola.

Příklad#

GML
// car is an unbuilt vehicle with no wheels yet.
car.set_forward(1, 0, 0);
var wheel = jolt_vehicle_wheel(1, -0.8, 0);
wheel.set_radius(0.325).set_driven(true).set_steering(false);
wheel.set_inertia(2.5).set_angular_damping(0.5);
var wheel_index = car.add_wheel(wheel);
// Add the other wheels, then call car.build().

Vozidla mají výchozí +Y dopředu a +Z nahoru. Nová kola přebírají zvolenou soustavu vozidla a výchozí zavěšení podél záporné up. Směry musí být konečné, nenulové a kolmé; interně se normalizují. Orientace vozidla se zamkne po přidání prvního kola. Veškeré nastavení dokončete před build(). Transformace kol, debug osy a get_forward_speed() respektují zvolenou soustavu; renderovací meshe mají nadále lokální osu nápravy +X a up +Z. Změny orientace vyžadují aktualizovanou bridge DLL.

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_forwardJoltVehicle.set_forward(x, y, z=0)Boolean; před přidáním prvního kola a build. Místní nenulové kolmé forward/up, normalizované; set_forward používá +Z up.
JoltVehicle.set_orientationJoltVehicle.set_orientation(fx, fy, fz, ux=0, uy=0, uz=1)Boolean; před přidáním prvního kola a build. Místní nenulové kolmé forward/up, normalizované; set_forward používá +Z up.