Physics on bones will work very similar to the way the cloth is working - you add particles to the bone’s position, connect them with any join you think fits (distance joint exists in all engines, spring joint is available in cannon) and update the bone’s position every frame based on what the physics engine delivers back. So:
- Add a particle per bone position (I would disable the bidirectional transformation to have better performance - it is a flag in the impostor options)
- Set each particles transformation according to the absolute position of the bone
- Connect those particles using joints
- On a before-render function, get the (updated) positions of the bone impostors and update the bone positions accordingly.
If you limit the joint’s allowed angles you can get the effect you wanted
On a different note, you can achieve this effect without a physics engine (at least not on the antenna). Create the mesh, and update its movement according to the change in acceleration in the (local) Z axis of the car. You know the car is moving in a specific speed - move the upper pat of the antenna a bit to the back if it goes forward. When the can breaks (acceleration delta is negative) start moving the antenna forward. I dont see why it can’t look realistic without a physics engine.