2-колесные машины (физика в Unity3D)

Я пытаюсь создать двухколесное транспортное средство в Unity3D, где колеса расположены бок о бок (представьте себе инвалидную коляску или транспортное средство Braitenberg). Смысл в том, что если я веду одно колесо, а не другое, автомобиль должен повернуть. Я также должен иметь возможность поворачивать одно колесо вперед, а другое назад, и машина должна вращаться.

Тем не менее, автомобиль обычно просто движется вперед (возможно, с небольшим уклоном в направлении, в котором я хочу повернуть ... но только незначительным). У меня есть ощущение, что я должен изменить настройки перетаскивания / трения, но я играл с ними с очень небольшим эффектом. Может ли кто-нибудь указать мне, что я должен делать, чтобы это работало правильно.

Для информации я использую коллайдер с колесом физики, встроенный в Unity 3D. Мне нужно сделать это с помощью физики, поэтому кинематическая система не подходит.

Спасибо


person Chris Headleand    schedule 10.07.2015    source источник
comment
Инвалидные коляски, как правило, четырехколесные :) Также обратите внимание, что обычно вы не поворачиваете только одно из колес - вы либо фиксируете другое колесо на месте (например, не позволяете ему вращаться), либо вращаете его в противоположном направлении. В противном случае, конечно, он имеет тенденцию очень плохо поворачивать - даже танки просто едут по одной из гусениц задним ходом при повороте на месте.   -  person Luaan    schedule 10.07.2015
comment
Когда одно колесо вынуждено вращаться, возможны два исхода: один, другое колесо также вращается с той же скоростью, и кресло движется, или два, другое колесо остается неподвижным, а кресло вращается вокруг него. Как правило, физика будет следовать по самому легкому пути, поэтому сделайте неправильный путь трудным (заблокируйте другое колесо).   -  person Andy Newman    schedule 14.07.2015


Ответы (1)


Хорошо, я добавлю здесь ответ (хотя это мой собственный вопрос), так как я видел пару сообщений, в которых задавались похожие вещи. Даже если вы создаете автомобиль с двумя ведущими колесами (например, маленький робот или автомобиль Бритенберга), вам все равно следует добавить маленькие колеса спереди или сзади для устойчивости (думайте о них как о роликах). На этих колесах уменьшите коэффициент жесткости для прямого и бокового трения до 0. На ваших основных ведущих колесах уменьшите коэффициент жесткости на боковое трение до 0,5.

Это позволяет автомобилю двигаться с бортовым поворотом.

person Chris Headleand    schedule 10.07.2015
comment
Или вы можете добавить BoxCollider к кузову вашего автомобиля вместе с матом Physics Mat с нулевым трением и нулевым отскоком. и он обеспечит поддержку и не даст вашему автомобилю упасть. пока вы пытаетесь переместить его с уже добавленными колесами. Следовательно, вы можете создать автомобиль только с двумя колесами :) - person Umair M; 12.07.2015