Navigation
API > API/Runtime > API/Runtime/ChaosVehiclesCore
Inheritance Hierarchy
- TVehicleSystem
- FSimpleWheelSim
References
| Module | ChaosVehiclesCore |
| Header | /Engine/Source/Runtime/Experimental/ChaosVehicles/ChaosVehiclesCore/Public/WheelSystem.h |
| Include | #include "WheelSystem.h" |
Syntax
class FSimpleWheelSim : public TVehicleSystem< FSimpleWheelConfig >
Remarks
Wheel instance data changes during the simulation
Variables
| Type | Name | Description | |
|---|---|---|---|
| bool | ABSEnabled | ||
| float | AngularPosition | ||
| float | AppliedLinearBrakeForce | ||
| float | AppliedLinearDriveForce | Debug for now | |
| float | AvailableGrip | ||
| bool | bABSActivated | ||
| bool | bClipping | ||
| bool | bEngineBraking | ||
| bool | bInContact | ||
| bool | BrakeEnabled | ||
| float | BrakeTorque | ||
| float | CorneringStiffness | ||
| float | DriveTorque | In. | |
| bool | EngineEnabled | ||
| float | ExternalBrakeTorque | ||
| float | ExternalDriveTorque | ||
| FSimpleWheelConfig::EExternalTorqueCombineMethod | ExternalTorqueCombineMethod | ||
| FVector | ForceFromFriction | ||
| float | ForceIntoSurface | ||
| float | FrictionMultiplier | ||
| FVector | GroundVelocityVector | ||
| bool | HandbrakeEnabled | ||
| float | HandbrakeTorque | ||
| float | Inertia | ||
| FVector | InputForces | ||
| float | LateralAdhesiveLimit | ||
| float | LateralSlipGraphMultiplier | ||
| float | LongitudinalAdhesiveLimit | ||
| float | MassPerWheel | ||
| float | MaxBrakeTorque | ||
| float | MaxOmega | ||
| float | MaxSteeringAngle | ||
| float | Omega | ||
| float | Re | ||
| float | SideSlipModifier | ||
| float | SlipAngle | ||
| float | SlipVelocity | ||
| float | Spin | ||
| float | SteeringAngle | ||
| bool | SteeringEnabled | ||
| float | SurfaceFriction | ||
| float | Sx | ||
| bool | TractionControlEnabled | ||
| uint32 | WheelIndex |
Constructors
| Type | Name | Description | |
|---|---|---|---|
FSimpleWheelSim
(
const FSimpleWheelConfig* SetupIn |
Functions
| Type | Name | Description | |
|---|---|---|---|
| float | Get the angular position of the wheel [radians] | ||
| float | Get the angular velocity of the wheel [radians/sec] | ||
| float | Get the braking torque being applied to the wheel [N.m] | ||
| float | Get the drive torque being applied to the wheel [N.m] | ||
| float | Get the radius of the wheel [cm] | ||
| FVector | Return the calculated available friction force | ||
| float | GetNormalisedFrictionFromSlipAngle
(
float SlipIn |
Amount of friction we can expect after taking into account the amount the wheel slips | |
| float | |||
| float | Get the current longitudinal slip value [0 no slip - using static friction, 1 full slip - using dynamic friction] | ||
| float | GetRoadSpeed () |
Get the road speed at the wheel | |
| float | Get the effective ground speed along the lateral wheel axis positive if wheel is faster than effective ground speed, negative if wheel is slower | ||
| float | GetSlipAngle () |
Get the slip angle for this wheel - angle between wheel forward axis and velocity vector [degrees] | |
| float | Get the difference between the wheel speed and the effective ground speed of the vehicle at the wheel positive if wheel is faster than effective ground speed, negative if wheel is slower | ||
| float | |||
| float | Get the friction coefficient of the surface in contact with the wheel | ||
| float | Get the linear ground speed of the wheel based on its current rotational speed | ||
| float | Get the magnitude of the force pressing the wheel into the terrain | ||
| float | GetWheelRPM () |
Get the wheel RPM [revolutions per minute] | |
| bool | InContact () |
Is the wheel in contact with the terrain or another object | |
| bool | |||
| bool | IsSkidding () |
||
| bool | IsSlipping () |
||
| void | SetAngularPosition
(
float PositionIn |
Set the angular position in radians | |
| void | SetAngularVelocity
(
float AngularVelocityIn |
Set the angular position in radians/sec | |
| void | SetBrakeTorque
(
float BrakeTorqueIn, |
Set the braking torque - decelerating rotational force | |
| void | SetBrakeTorqueOverride
(
float BrakeTorqueIn, |
||
| void | SetDriveTorque
(
float EngineTorqueIn |
Set the drive torque - accelerating rotational force | |
| void | SetDriveTorqueOverride
(
float EngineTorqueIn |
||
| void | SetMassPerWheel
(
float VehicleMassPerWheel |
||
| void | SetMatchingSpeed
(
float LinearMetersPerSecondIn |
Set wheel rotational speed to match the specified linear forwards speed | |
| void | SetMaxOmega
(
float InMaxOmega |
||
| void | SetOnGround
(
bool OnGround |
||
| void | SetSteeringAngle
(
float InAngle |
||
| void | SetSurfaceFriction
(
float InFriction |
Set the friction coefficient of the surface under the wheel | |
| void | SetTorqueCombineMethod
(
FSimpleWheelConfig::EExternalTorqueCombineMethod InCombineMethod |
||
| void | SetVehicleGroundSpeed
(
const FVector& VIn |
Set the vehicle's speed at the wheels location in local wheel coords | |
| void | SetWheelIndex
(
uint32 InIndex |
||
| void | SetWheelLoadForce
(
float WheelLoadForceIn |
Set the force pressing the wheel into the terrain - from suspension | |
| void | SetWheelRadius
(
float NewRadius |
Set the wheel radius - can change dynamically during simulation if desired | |
| void | Simulate
(
float DeltaTime |
Simulate - figure out wheel lateral and longitudinal forces based on available friction at the wheel Wheel load force from body weight and the surface friction together determine the grip available at the wheel DriveTorque accelerates the wheel BrakeTorque decelerates the wheel |