VehicleBody3D
Наследует: RigidBody3D < PhysicsBody3D < CollisionObject3D < Node3D < Node < Object
Физическое 3D-тело, имитирующее поведение автомобиля.
Описание
Это физическое тело реализует всю физическую логику, необходимую для моделирования автомобиля. Оно основано на системе Raycast Vehicle, обычно используемой в физических движках. Помимо узла CollisionShape3D для основного корпуса автомобиля, необходимо также добавить узел VehicleWheel3D для каждого колеса. Также следует добавить к этому узлу узел MeshInstance3D для 3D-модели автомобиля, но эта модель, как правило, не должна включать сетки для колёс. Вы можете управлять автомобилем, используя свойства brake, engine_force и steering. Положение или ориентацию этого узла нельзя изменять напрямую.
Примечание: Локальный передний план для этого узла — Vector3.MODEL_FRONT.
Примечание: Точка начала координат VehicleBody3D будет определять центр тяжести вашего автомобиля. Чтобы сделать транспортное средство более приземлённым, исходную точку обычно располагают низко, перемещая CollisionShape3D и MeshInstance3D вверх.
Примечание: Этот класс имеет известные проблемы и не предназначен для реализации реалистичной трёхмерной физики транспортного средства. Если вам нужна продвинутая физика транспортного средства, вам, возможно, придётся написать собственную интеграцию физики с использованием CharacterBody3D или RigidBody3D.
Обучающие материалы
Свойства
|
||
|
||
mass |
|
|
|
Описания свойств
Замедляет транспортное средство, применяя тормозное усилие. Транспортное средство замедляется только в том случае, если колеса соприкасаются с поверхностью. Сила, которую необходимо применить для адекватного замедления транспортного средства, зависит от RigidBody3D.mass транспортного средства. Для транспортного средства с массой, установленной на 1000, попробуйте значение в диапазоне 25–30 для резкого торможения.
Ускоряет транспортное средство, применяя силу двигателя. Транспортное средство ускоряется только в том случае, если колеса, у которых VehicleWheel3D.use_as_traction установлен на true, соприкасаются с поверхностью. RigidBody3D.mass транспортного средства влияет на ускорение транспортного средства. Для транспортного средства с массой, установленной на 1000, попробуйте значение в диапазоне 25–50 для ускорения.
Примечание: Моделирование не учитывает влияние передач, вам нужно будет добавить логику для этого, если вы хотите смоделировать передачи.
Отрицательное значение приведет к тому, что транспортное средство будет двигаться задним ходом.
Угол поворота рулевого колеса транспортного средства. Установка этого значения на ненулевое приведет к повороту транспортного средства во время движения. Колеса, у которых VehicleWheel3D.use_as_steering установлен на true, будут автоматически поворачиваться.
Примечание: Это свойство редактируется в инспекторе в градусах. В коде свойство задается в радианах.