全く同じ長さのアニメーションを再生するという前提で良かったでしょうか?つまり人物が車を避けるタイミングはどの車スキンだとしても同一なのでしょうか?
仮にそうだとすれば人物の移動量だけに差が出来れば問題ないということかと思いますので、
各人物の座標を管理するボーン名をCharaPosition_nn
(nnは番号)と仮定させていただいた場合、
まずCharaPosition_nn
を一番遠い地点まで動かす(一番大きい車を避ける)アニメーションを作成し、
CharaPosition_nn
にroot
ボーンをターゲットとしたトランスフォームコンストレイントTC_CharaPosition_nn
を作成し、
スキンごとにトランスレートのミックスの値を変更して、車のサイズが小さい時ほど移動量を減らすようにすれば実現できるように思います。
つまり、車のサイズが小さい時ほどトランスレートのミックス値を100に、
車のサイズが大きい時ほどトランスレートのミックス値を0に近づけるイメージです。
rootボーンには何の動きもついていないことが前提になりますが、トランスレートのミックス値が100になっているなら全く動かず、
0の時は最初に作成したアニメーション通りに動くので一番端まで避けるようになるかと思います。
もしまだ何か想定と違っている点があればお手数ですが補足いただけますと幸いです!