Vehicles
Kolizní testery a vrstvy
Určuje, jak virtuální kola hledají povrch a které objekty mohou být platnou vozovkou.
Tester používá ObjectLayer chassis, aktuální layer matrix worldu a nastavený limit sklonu. Sensor tělesa jsou vždy přeskočena.
Kolizní režimy#
| Konstanta | Chování | Typické použití |
|---|---|---|
| JOLT_VEHICLE_COLLISION_RAY | Jeden suspension ray; nejrychlejší a výchozí. | Běžná auta na dostatečně hladké kolizi. |
| JOLT_VEHICLE_COLLISION_SPHERE | Sphere cast s collision_radius. | Stabilnější kontakt přes hrany a malé mezery. |
| JOLT_VEHICLE_COLLISION_CYLINDER | Cylinder cast odpovídající kolu. | Detailní objemový kontakt za vyšší cenu. |
Filtrování vrstev#
- Vrstva povrchu musí být v JoltLayer matrix povolena vůči vrstvě chassis.
- Změna vrstvy chassis změní filtr používaný jeho wheel testerem.
- Sensors a triggers se přes toto API nemohou stát sjízdným povrchem.
- Box, Mesh a HeightField ground dodržují běžná pravidla svých těles.
- Dynamic a Kinematic povrchy předávají rychlost kontaktního bodu, takže fungují pohyblivé platformy.
Limity sklonu a orientace#
| Volba | Účinek |
|---|---|
| maximum_slope_angle | Odmítne contact normals strmější než hranice 0..90 stupňů. |
| maximum_pitch_roll_angle | Omezí pitch/roll přijímaný VehicleConstraintem; maximum je 180. |
| collision_radius | Ovlivňuje pouze Sphere cast, nikoliv vizuální velikost kol. |
var car = jolt_vehicle(chassis, {
collision: JOLT_VEHICLE_COLLISION_SPHERE,
collision_radius: 0.08,
maximum_slope_angle: 50
});