reckfellENGINE

VehicleWheel3D

Физическое 3D-тело для VehicleBody3D, имитирующее поведение колеса.

На этой странице
class VehicleWheel3DReckfellSharpНаследует Entity3D

Физическое 3D-тело для VehicleBody3D, имитирующее поведение колеса.

Узел, используемый как дочерний элемент родительского элемента VehicleBody3D для моделирования поведения одного из его колес. Этот узел также действует как коллайдер для определения, касается ли колесо поверхности. Примечание: Этот класс имеет известные проблемы и не предназначен для предоставления реалистичной трехмерной физики транспортного средства. Если вам нужна расширенная физика транспортного средства, вам может потребоваться написать собственную интеграцию физики с использованием другого класса PhysicsBody3D.

Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.

Конструкторы1

VehicleWheel3DКонструктор
# VehicleWheel3D
C#
public VehicleWheel3D();

Свойства14

BrakeСвойство
# Brake
C#
public float Brake { get; set; }

Замедляет колесо, применяя тормозное усилие. Колесо замедляется только если оно соприкасается с поверхностью. Сила, которую вам нужно применить для адекватного замедления вашего автомобиля, зависит от RigidBody3D.Mass автомобиля. Для автомобиля с массой, установленной на 1000, попробуйте значение в диапазоне 25–30 для резкого торможения.

DampingCompressionСвойство
# DampingCompression
C#
public float DampingCompression { get; set; }

Демпфирование, применяемое к пружине подвески при сжатии, то есть когда колесо движется вверх относительно автомобиля. Измеряется в ньютон-секундах на миллиметр (Н⋅с/мм) (N⋅s/mm) или мегаграммах в секунду (Мг/с)(Mg/s). Это значение должно быть между 0,0 (без демпфирования) и 1,0, но может быть и больше. Значение 0,0 означает, что автомобиль будет продолжать подпрыгивать, поскольку пружина сохраняет свою энергию. Хорошее значение для этого составляет около 0,3 для обычного автомобиля, 0,5 для гоночного автомобиля.

DampingRelaxationСвойство
# DampingRelaxation
C#
public float DampingRelaxation { get; set; }

Демпфирование, применяемое к пружине подвески при отскоке или выдвижении, то есть когда колесо движется вниз относительно транспортного средства. Измеряется в ньютон-секундах на миллиметр (N⋅s/mm) или мегаграммах в секунду (Mg/s). Это значение должно быть между 0,0 (без демпфирования) и 1,0, но может быть и больше. Это значение всегда должно быть немного выше свойства VehicleWheel3D.DampingCompression. Для значения VehicleWheel3D.DampingCompression 0,3 попробуйте значение релаксации 0,5.

EngineForceСвойство
# EngineForce
C#
public float EngineForce { get; set; }

Ускоряет колесо, применяя силу двигателя. Колесо ускоряется только в том случае, если оно соприкасается с поверхностью. RigidBody3D.Mass транспортного средства влияет на ускорение транспортного средства. Для транспортного средства с массой, установленной на 1000, попробуйте значение в диапазоне 25–50 для ускорения. Примечание: Моделирование не учитывает влияние передач, вам нужно будет добавить логику для этого, если вы хотите смоделировать передачи. Отрицательное значение приведет к реверсированию колеса.

SteeringСвойство
# Steering
C#
public float Steering { get; set; }

Угол поворота рулевого колеса в радианах. Установка ненулевого значения приведет к повороту транспортного средства во время движения.

SuspensionMaxForceСвойство
# SuspensionMaxForce
C#
public float SuspensionMaxForce { get; set; }

Максимальная сила, которую может выдержать пружина. Это значение должно быть больше четверти RigidBody3D.Mass VehicleBody3D, иначе пружина не выдержит вес транспортного средства. Хорошие результаты часто достигаются при значении, которое примерно в 3-4 раза больше этого числа.

SuspensionStiffnessСвойство
# SuspensionStiffness
C#
public float SuspensionStiffness { get; set; }

Жесткость подвески, измеряемая в ньютонах на миллиметр (N/mm) или мегаграммах на секунду в квадрате (Mg/s²). Используйте значение ниже 50 для внедорожника, значение от 50 до 100 для гоночного автомобиля и попробуйте что-то около 200 для чего-то вроде болида Формулы-1.

SuspensionTravelСвойство
# SuspensionTravel
C#
public float SuspensionTravel { get; set; }

Это расстояние, которое может пройти подвеска. Поскольку единицы Reckfell эквивалентны метрам, установите этот параметр относительно низким. Попробуйте значение от 0,1 до 0,3 в зависимости от типа автомобиля.

UseAsSteeringСвойство
# UseAsSteering
C#
public bool UseAsSteering { get; set; }

Если true, это колесо будет поворачиваться, когда автомобиль поворачивается. Это значение используется вместе с VehicleBody3D.Steering и игнорируется, если вместо этого вы используете значение VehicleWheel3D.Steering для каждого колеса.

UseAsTractionСвойство
# UseAsTraction
C#
public bool UseAsTraction { get; set; }

Если true, это колесо передает силу двигателя на землю, чтобы двигать транспортное средство вперед. Это значение используется вместе с VehicleBody3D.EngineForce и игнорируется, если вместо этого вы используете значение VehicleWheel3D.EngineForce для каждого колеса.

WheelFrictionSlipСвойство
# WheelFrictionSlip
C#
public float WheelFrictionSlip { get; set; }

Это определяет, насколько сильное сцепление имеет это колесо. Оно сочетается с настройкой трения поверхности, с которой соприкасается колесо. 0,0 означает отсутствие сцепления, 1,0 — нормальное сцепление. Для настройки дрифт-кара попробуйте установить сцепление задних колес немного ниже, чем передних, или используйте меньшее значение для имитации износа шин. Лучше всего установить это значение на 1,0 при начале.

WheelRadiusСвойство
# WheelRadius
C#
public float WheelRadius { get; set; }

Радиус колеса в метрах.

WheelRestLengthСвойство
# WheelRestLength
C#
public float WheelRestLength { get; set; }

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

WheelRollInfluenceСвойство
# WheelRollInfluence
C#
public float WheelRollInfluence { get; set; }

Это значение влияет на крен вашего автомобиля. Если установлено значение 1,0 для всех колес, ваш автомобиль будет сопротивляться крену кузова, в то время как значение 0,0 будет склонно к опрокидыванию.

Методы34

GetBrakefloat
# GetBrake
C#
public float GetBrake();
Возвращает float
GetContactBodyEntity3D
# GetContactBody
C#
public Entity3D GetContactBody();

Возвращает узел контактирующего тела, если он допустим в дереве, как Entity3D. В данный момент GridMap не поддерживается, поэтому узел всегда будет иметь тип PhysicsBody3D. Возвращает null, если колесо не контактирует с поверхностью или контактирующее тело не является PhysicsBody3D.

Возвращает Entity3D
GetContactNormalVector3
# GetContactNormal
C#
public Vector3 GetContactNormal();

Возвращает нормаль столкновения подвески в мировом пространстве, если колесо находится в контакте. Если колесо не находится в контакте ни с чем, возвращает вектор, направленный прямо вдоль оси подвески к транспортному средству в мировом пространстве.

Возвращает Vector3
GetContactPointVector3
# GetContactPoint
C#
public Vector3 GetContactPoint();

Возвращает точку столкновения подвески в мировом пространстве, если колесо находится в контакте. Если колесо не находится в контакте ни с чем, возвращает максимальную точку луча колеса, отбрасываемого в мировом пространстве, которая определяется как wheel_rest_length + wheel_radius.

Возвращает Vector3
GetDampingCompressionfloat
# GetDampingCompression
C#
public float GetDampingCompression();
Возвращает float
GetDampingRelaxationfloat
# GetDampingRelaxation
C#
public float GetDampingRelaxation();
Возвращает float
GetEngineForcefloat
# GetEngineForce
C#
public float GetEngineForce();
Возвращает float
GetFrictionSlipfloat
# GetFrictionSlip
C#
public float GetFrictionSlip();
Возвращает float
GetRadiusfloat
# GetRadius
C#
public float GetRadius();
Возвращает float
GetRollInfluencefloat
# GetRollInfluence
C#
public float GetRollInfluence();
Возвращает float
GetRpmfloat
# GetRpm
C#
public float GetRpm();

Возвращает скорость вращения колеса в оборотах в минуту.

Возвращает float
GetSkidinfofloat
# GetSkidinfo
C#
public float GetSkidinfo();

Возвращает значение от 0,0 до 1,0, которое указывает, буксует ли это колесо. 0,0 — буксует (колесо потеряло сцепление, например, обледеневшая дорога), 1,0 — не буксует (колесо имеет полное сцепление, например, сухая асфальтовая дорога).

Возвращает float
GetSteeringfloat
# GetSteering
C#
public float GetSteering();
Возвращает float
GetSuspensionMaxForcefloat
# GetSuspensionMaxForce
C#
public float GetSuspensionMaxForce();
Возвращает float
GetSuspensionRestLengthfloat
# GetSuspensionRestLength
C#
public float GetSuspensionRestLength();
Возвращает float
GetSuspensionStiffnessfloat
# GetSuspensionStiffness
C#
public float GetSuspensionStiffness();
Возвращает float
GetSuspensionTravelfloat
# GetSuspensionTravel
C#
public float GetSuspensionTravel();
Возвращает float
IsInContactbool
# IsInContact
C#
public bool IsInContact();

Возвращает true, если это колесо контактирует с поверхностью.

Возвращает bool
IsUsedAsSteeringbool
# IsUsedAsSteering
C#
public bool IsUsedAsSteering();
Возвращает bool
IsUsedAsTractionbool
# IsUsedAsTraction
C#
public bool IsUsedAsTraction();
Возвращает bool
SetBrakevoid
# SetBrake
C#
public void SetBrake(float brake);
Параметры
ИмяТипПо умолчанию
brakefloat—
SetDampingCompressionvoid
# SetDampingCompression
C#
public void SetDampingCompression(float length);
Параметры
ИмяТипПо умолчанию
lengthfloat—
SetDampingRelaxationvoid
# SetDampingRelaxation
C#
public void SetDampingRelaxation(float length);
Параметры
ИмяТипПо умолчанию
lengthfloat—
SetEngineForcevoid
# SetEngineForce
C#
public void SetEngineForce(float engineForce);
Параметры
ИмяТипПо умолчанию
engineForcefloat—
SetFrictionSlipvoid
# SetFrictionSlip
C#
public void SetFrictionSlip(float length);
Параметры
ИмяТипПо умолчанию
lengthfloat—
SetRadiusvoid
# SetRadius
C#
public void SetRadius(float length);
Параметры
ИмяТипПо умолчанию
lengthfloat—
SetRollInfluencevoid
# SetRollInfluence
C#
public void SetRollInfluence(float rollInfluence);
Параметры
ИмяТипПо умолчанию
rollInfluencefloat—
SetSteeringvoid
# SetSteering
C#
public void SetSteering(float steering);
Параметры
ИмяТипПо умолчанию
steeringfloat—
SetSuspensionMaxForcevoid
# SetSuspensionMaxForce
C#
public void SetSuspensionMaxForce(float length);
Параметры
ИмяТипПо умолчанию
lengthfloat—
SetSuspensionRestLengthvoid
# SetSuspensionRestLength
C#
public void SetSuspensionRestLength(float length);
Параметры
ИмяТипПо умолчанию
lengthfloat—
SetSuspensionStiffnessvoid
# SetSuspensionStiffness
C#
public void SetSuspensionStiffness(float length);
Параметры
ИмяТипПо умолчанию
lengthfloat—
SetSuspensionTravelvoid
# SetSuspensionTravel
C#
public void SetSuspensionTravel(float length);
Параметры
ИмяТипПо умолчанию
lengthfloat—
SetUseAsSteeringvoid
# SetUseAsSteering
C#
public void SetUseAsSteering(bool enable);
Параметры
ИмяТипПо умолчанию
enablebool—
SetUseAsTractionvoid
# SetUseAsTraction
C#
public void SetUseAsTraction(bool enable);
Параметры
ИмяТипПо умолчанию
enablebool—
Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

Вход в аккаунт

Войдите в аккаунт Reckfell.

Один аккаунт для всей платформы Reckfell.