Commit Graph
2 Commits
Author SHA1 Message Date
zwitschi 319096d0d9 fix(vehicle): settle the chassis on the road (float 33 m -> 6 cm)
Two root causes, both in how the chassis box was authored:

1. The box centre was -Extent.Z*0.25, below the root bone, so the box sat under the
   ground and the suspension pushed the whole vehicle up. The skeletal mesh imports
   ROLLED (height along Y, width along Z) while the armature is unrolled, so the box is
   now built with swapped axes (length from mesh X, width from mesh Z, height from mesh
   Y) and centred at the rolled mesh's mid-height (Bounds.Origin.Y). The vehicle now
   settles at Z 6 cm instead of floating at 33 m.

2. A left-over diagnostic stopped the movement component at 2.5 s whenever the pawn
   ticked, which cut the drive test (throttle runs 1-4 s). It is now gated on the vehicle
   actually having zero wheels.

Remaining: the drive test still reports ~0 forward speed, so the throttle does not yet
move the car - the wheels rest ~2 cm above the ground because the suspension rest
position is measured against the root bone while the box sits at the centre of mass.
2026-11-10 21:33:14 +01:00
zwitschi 2e0421480c feat(vehicle): skeletal vehicle asset for Chaos, and the block that follows
Chaos drives a skeletal mesh, so the static system split was not drivable on its own. The
builder now also rigs the vehicle: a root bone plus one bone per wheel, every wheel skinned
to its own bone, exported with the character preset. SK_Vehicle_Sedan imports with
SK_Vehicle_Sedan_Skeleton (508 triangles).

Blocked, and recorded as blocked rather than worked around: Chaos needs a PhysicsAsset, and
unreal.PhysicsAssetFactory in 5.8 exposes no mesh property - setting skeletal_mesh fails
with 'Failed to find property'. Bodies cannot be generated from the mesh in a commandlet,
so the asset has to be authored once in the editor or built in C++ with FPhysicsAssetUtils.

Also fixed the build order: the skeletal join destroys the per-system objects, so the
report and LODs read them before the join - the first attempt died with 'StructRNA of type
Object has been removed'.
2026-11-09 14:53:35 +01:00