Никак не могу понять как ограничить скорость перпендикулярную оси направления.
Двигается с помощью AddForce, из-за этого очень сильно разгоняется перпендикулярно оси UP при малейших поворотах вектора приложенной силы, что хотелось бы ограничить. Что-то туплю.
Кусок кода, в котором уже нету того, что могло бы ограничить скорость:
var force_vector = transform.up;
force_vector *= (rocketConfig.forceMultiplier * 10f + 100f);
_rigid.AddForce(force_vector);
float airPres = (1f - rocketConfig.airDragRotate) * transform.right.y * _rigid.velocity.magnitude * 0.15f;
_rigid.AddTorque(-direction * maxRotSpeed * rocketConfig.horizontalStability + airPres);
_rigid.angularDrag = rocketConfig.horizontalStability * maxRotSpeed;
Раньше просто ограничивал _rigid.velocity.x, но не знал, что он в мировых координатах, и по этому по X он совсем переставал двигатся, а по Y ускорялся.
UPD. Сделал кастыль - меняю rigidbody.drag линейно зависимо от скорости по X, более-менее устраивает поведение.