RavEngine
Loading...
Searching...
No Matches
snippetvehicle2::BaseVehicle Class Referenceabstract
Inheritance diagram for snippetvehicle2::BaseVehicle:
[legend]
Collaboration diagram for snippetvehicle2::BaseVehicle:
[legend]

Public Member Functions

bool initialize ()
 
virtual void destroy ()
 
virtual void initComponentSequence (bool addPhysXBeginEndComponents)=0
 
void step (const PxReal dt, const PxVehicleSimulationContext &context)
 
virtual void getDataForRigidBodyComponent (const PxVehicleAxleDescription *&axleDescription, const PxVehicleRigidBodyParams *&rigidBodyParams, PxVehicleArrayData< const PxVehicleSuspensionForce > &suspensionForces, PxVehicleArrayData< const PxVehicleTireForce > &tireForces, const PxVehicleAntiRollTorque *&antiRollTorque, PxVehicleRigidBodyState *&rigidBodyState)
 Retrieve pointers to the parameter and state data required to update the dynamic state of a rigid body.
 
virtual void getDataForSuspensionComponent (const PxVehicleAxleDescription *&axleDescription, const PxVehicleRigidBodyParams *&rigidBodyParams, const PxVehicleSuspensionStateCalculationParams *&suspensionStateCalculationParams, PxVehicleArrayData< const PxReal > &steerResponseStates, const PxVehicleRigidBodyState *&rigidBodyState, PxVehicleArrayData< const PxVehicleWheelParams > &wheelParams, PxVehicleArrayData< const PxVehicleSuspensionParams > &suspensionParams, PxVehicleArrayData< const PxVehicleSuspensionComplianceParams > &suspensionComplianceParams, PxVehicleArrayData< const PxVehicleSuspensionForceParams > &suspensionForceParams, PxVehicleSizedArrayData< const PxVehicleAntiRollForceParams > &antiRollForceParams, PxVehicleArrayData< const PxVehicleRoadGeometryState > &wheelRoadGeomStates, PxVehicleArrayData< PxVehicleSuspensionState > &suspensionStates, PxVehicleArrayData< PxVehicleSuspensionComplianceState > &suspensionComplianceStates, PxVehicleArrayData< PxVehicleSuspensionForce > &suspensionForces, PxVehicleAntiRollTorque *&antiRollTorque)
 Retrieve pointers to the parameter and state data required to compute the suspension state and the forces/torques that arise from the suspension state.
 
virtual void getDataForTireComponent (const PxVehicleAxleDescription *&axleDescription, PxVehicleArrayData< const PxReal > &steerResponseStates, const PxVehicleRigidBodyState *&rigidBodyState, PxVehicleArrayData< const PxVehicleWheelActuationState > &actuationStates, PxVehicleArrayData< const PxVehicleWheelParams > &wheelParams, PxVehicleArrayData< const PxVehicleSuspensionParams > &suspensionParams, PxVehicleArrayData< const PxVehicleTireForceParams > &tireForceParams, PxVehicleArrayData< const PxVehicleRoadGeometryState > &roadGeomStates, PxVehicleArrayData< const PxVehicleSuspensionState > &suspensionStates, PxVehicleArrayData< const PxVehicleSuspensionComplianceState > &suspensionComplianceStates, PxVehicleArrayData< const PxVehicleSuspensionForce > &suspensionForces, PxVehicleArrayData< const PxVehicleWheelRigidBody1dState > &wheelRigidBody1DStates, PxVehicleArrayData< PxVehicleTireGripState > &tireGripStates, PxVehicleArrayData< PxVehicleTireDirectionState > &tireDirectionStates, PxVehicleArrayData< PxVehicleTireSpeedState > &tireSpeedStates, PxVehicleArrayData< PxVehicleTireSlipState > &tireSlipStates, PxVehicleArrayData< PxVehicleTireCamberAngleState > &tireCamberAngleStates, PxVehicleArrayData< PxVehicleTireStickyState > &tireStickyStates, PxVehicleArrayData< PxVehicleTireForce > &tireForces)
 
virtual void getDataForWheelComponent (const PxVehicleAxleDescription *&axleDescription, PxVehicleArrayData< const PxReal > &steerResponseStates, PxVehicleArrayData< const PxVehicleWheelParams > &wheelParams, PxVehicleArrayData< const PxVehicleSuspensionParams > &suspensionParams, PxVehicleArrayData< const PxVehicleWheelActuationState > &actuationStates, PxVehicleArrayData< const PxVehicleSuspensionState > &suspensionStates, PxVehicleArrayData< const PxVehicleSuspensionComplianceState > &suspensionComplianceStates, PxVehicleArrayData< const PxVehicleTireSpeedState > &tireSpeedStates, PxVehicleArrayData< PxVehicleWheelRigidBody1dState > &wheelRigidBody1dStates, PxVehicleArrayData< PxVehicleWheelLocalPose > &wheelLocalPoses)
 
- Public Member Functions inherited from physx::vehicle2::PxVehicleRigidBodyComponent
virtual bool update (const PxReal dt, const PxVehicleSimulationContext &context)
 Update function for a vehicle component.
 
- Public Member Functions inherited from physx::vehicle2::PxVehicleSuspensionComponent
virtual bool update (const PxReal dt, const PxVehicleSimulationContext &context)
 Update the suspension state and suspension compliance state and use those updated states to compute suspension and anti-roll forces/torques to apply to the vehicle's rigid body.
 
- Public Member Functions inherited from physx::vehicle2::PxVehicleTireComponent
virtual bool update (const PxReal dt, const PxVehicleSimulationContext &context)
 Update function for a vehicle component.
 
- Public Member Functions inherited from physx::vehicle2::PxVehicleWheelComponent
virtual bool update (const PxReal dt, const PxVehicleSimulationContext &context)
 Update function for a vehicle component.
 

Public Attributes

BaseVehicleParams mBaseParams
 
BaseVehicleState mBaseState
 
PxVehicleComponentSequence mComponentSequence
 
PxU8 mComponentSequenceSubstepGroupHandle
 

Member Function Documentation

◆ getDataForRigidBodyComponent()

virtual void snippetvehicle2::BaseVehicle::getDataForRigidBodyComponent ( const PxVehicleAxleDescription *&  axleDescription,
const PxVehicleRigidBodyParams *&  rigidBodyParams,
PxVehicleArrayData< const PxVehicleSuspensionForce > &  suspensionForces,
PxVehicleArrayData< const PxVehicleTireForce > &  tireForces,
const PxVehicleAntiRollTorque *&  antiRollTorque,
PxVehicleRigidBodyState *&  rigidBodyState 
)
inlinevirtual

Retrieve pointers to the parameter and state data required to update the dynamic state of a rigid body.

Parameters
[out]axleDescriptionmust be returned as a non-null pointer to a single PxVehicleAxleDescription instance that describes the wheels and axles of the vehicle.
[out]rigidBodyParamsmust be returned as a non-null pointer to a single PxVehicleRigidBodyParams instance that describes the mass and moment of inertia of the rigid body.
[out]suspensionForcesmust be returned as a non-null pointer to an array of suspension forces and torques in the world frame. The suspension forces and torques will be applied to the rigid body to update rigidBodyState.
[out]tireForcesmust be returned as a non-null pointer to an array of tire forces and torques in the world frame. The tire forces and torques will be applied to the rigid body to update rigidBodyState.
[out]antiRollTorquemay be returned an optionally non-null pointer to a single PxVehicleAntiRollTorque instance that contains the accumulated anti-roll torque to apply to the rigid body.
[out]rigidBodyStateimust be returned as a non-null pointer to a single PxVehicleRigidBodyState instance that is to be forward integrated.
Note
The suspensionForces array must contain an entry for each wheel listed as an active wheel in axleDescription.
The tireForces array must contain an entry for each wheel listed as an active wheel in axleDescription.
If antiRollTorque is returned as a null pointer then zero anti-roll torque will be applied to the rigid body.

Implements physx::vehicle2::PxVehicleRigidBodyComponent.

◆ getDataForSuspensionComponent()

virtual void snippetvehicle2::BaseVehicle::getDataForSuspensionComponent ( const PxVehicleAxleDescription *&  axleDescription,
const PxVehicleRigidBodyParams *&  rigidBodyParams,
const PxVehicleSuspensionStateCalculationParams *&  suspensionStateCalculationParams,
PxVehicleArrayData< const PxReal > &  steerResponseStates,
const PxVehicleRigidBodyState *&  rigidBodyState,
PxVehicleArrayData< const PxVehicleWheelParams > &  wheelParams,
PxVehicleArrayData< const PxVehicleSuspensionParams > &  suspensionParams,
PxVehicleArrayData< const PxVehicleSuspensionComplianceParams > &  suspensionComplianceParams,
PxVehicleArrayData< const PxVehicleSuspensionForceParams > &  suspensionForceParams,
PxVehicleSizedArrayData< const PxVehicleAntiRollForceParams > &  antiRollForceParams,
PxVehicleArrayData< const PxVehicleRoadGeometryState > &  wheelRoadGeomStates,
PxVehicleArrayData< PxVehicleSuspensionState > &  suspensionStates,
PxVehicleArrayData< PxVehicleSuspensionComplianceState > &  suspensionComplianceStates,
PxVehicleArrayData< PxVehicleSuspensionForce > &  suspensionForces,
PxVehicleAntiRollTorque *&  antiRollTorque 
)
inlinevirtual

Retrieve pointers to the parameter and state data required to compute the suspension state and the forces/torques that arise from the suspension state.

Parameters
[out]axleDescriptionmust be returned as a non-null pointer to a single PxVehicleAxleDescription instance that describes the wheels and axles of the vehicle.
[out]rigidBodyParamsmust be returned as a a non-null pointer to a single PxVehicleRigidBodyParams instance that describes the mass and moment of inertia of the vehicle's rigid body.
[out]suspensionStateCalculationParamsmust be returned as a non-null pointer to a single PxVehicleSuspensionStateCalculationParams instance that describes the jounce computation type etc.
[out]steerResponseStatesmust be returned as a non-null pointer to a single PxVehicleSteerCommandResponseStates instance that describes the steer state of the wheels.
[out]rigidBodyStatemust be returned as a non-null pointer to a single PxVehicleRigidBodyState instance that describes the pose and momentum of the vehicle's rigid body.
[out]wheelParamsmust be set to a non-null pointer to an array of PxVehicleWheelParams containing per-wheel parameters for each wheel referenced by axleDescription.
[out]suspensionParamsmust be set to a non-null pointer to an array of PxVehicleSuspensionParams containing per-wheel parameters for each wheel referenced by axleDescription.
[out]suspensionComplianceParamsmust be set to a non-null pointer to an array of PxVehicleSuspensionComplianceParams containing per-wheel parameters for each wheel referenced by axleDescription.
[out]suspensionForceParamsmust be set to a non-null pointer to an array of PxVehicleSuspensionForceParams containing per-wheel parameters for each wheel referenced by axleDescription.
[out]antiRollForceParamsis optionally returned as a non-null pointer to an array of PxVehicleAntiRollForceParams with each element in the array describing a unique anti-roll bar connecting a pair of wheels.
[out]wheelRoadGeomStatesmust be set to non-null pointer to an array of PxVehicleRoadGeometryState containing per-wheel road geometry for each wheel referenced by axleDescription.
[out]suspensionStatesmust be set to a non-null pointer to an array of PxVehicleSuspensionState containing per-wheel suspension state for each wheel referenced by axleDescription.
[out]suspensionComplianceStatesmust be set to a non-null pointer to an array of PxVehicleSuspensionComplianceState containing per-wheel suspension compliance state for each wheel referenced by axleDescription.
[out]suspensionForcesmust be set to a non-null pointer to an array of PxVehicleSuspensionForce containing per-wheel suspension forces for each wheel referenced by axleDescription.
[out]antiRollTorqueis optionally returned as a non-null pointer to a single PxVehicleAntiRollTorque instance that will store the accumulated anti-roll torque to be applied to the vheicle's rigid body.
Note
antiRollForceParams and antiRollTorque should be returned either both non-NULL or both NULL.

Implements physx::vehicle2::PxVehicleSuspensionComponent.

◆ getDataForTireComponent()

virtual void snippetvehicle2::BaseVehicle::getDataForTireComponent ( const PxVehicleAxleDescription *&  axleDescription,
PxVehicleArrayData< const PxReal > &  steerResponseStates,
const PxVehicleRigidBodyState *&  rigidBodyState,
PxVehicleArrayData< const PxVehicleWheelActuationState > &  actuationStates,
PxVehicleArrayData< const PxVehicleWheelParams > &  wheelParams,
PxVehicleArrayData< const PxVehicleSuspensionParams > &  suspensionParams,
PxVehicleArrayData< const PxVehicleTireForceParams > &  tireForceParams,
PxVehicleArrayData< const PxVehicleRoadGeometryState > &  roadGeomStates,
PxVehicleArrayData< const PxVehicleSuspensionState > &  suspensionStates,
PxVehicleArrayData< const PxVehicleSuspensionComplianceState > &  suspensionComplianceStates,
PxVehicleArrayData< const PxVehicleSuspensionForce > &  suspensionForces,
PxVehicleArrayData< const PxVehicleWheelRigidBody1dState > &  wheelRigidBody1DStates,
PxVehicleArrayData< PxVehicleTireGripState > &  tireGripStates,
PxVehicleArrayData< PxVehicleTireDirectionState > &  tireDirectionStates,
PxVehicleArrayData< PxVehicleTireSpeedState > &  tireSpeedStates,
PxVehicleArrayData< PxVehicleTireSlipState > &  tireSlipStates,
PxVehicleArrayData< PxVehicleTireCamberAngleState > &  tireCamberAngleStates,
PxVehicleArrayData< PxVehicleTireStickyState > &  tireStickyStates,
PxVehicleArrayData< PxVehicleTireForce > &  tireForces 
)
inlinevirtual

◆ getDataForWheelComponent()

virtual void snippetvehicle2::BaseVehicle::getDataForWheelComponent ( const PxVehicleAxleDescription *&  axleDescription,
PxVehicleArrayData< const PxReal > &  steerResponseStates,
PxVehicleArrayData< const PxVehicleWheelParams > &  wheelParams,
PxVehicleArrayData< const PxVehicleSuspensionParams > &  suspensionParams,
PxVehicleArrayData< const PxVehicleWheelActuationState > &  actuationStates,
PxVehicleArrayData< const PxVehicleSuspensionState > &  suspensionStates,
PxVehicleArrayData< const PxVehicleSuspensionComplianceState > &  suspensionComplianceStates,
PxVehicleArrayData< const PxVehicleTireSpeedState > &  tireSpeedStates,
PxVehicleArrayData< PxVehicleWheelRigidBody1dState > &  wheelRigidBody1dStates,
PxVehicleArrayData< PxVehicleWheelLocalPose > &  wheelLocalPoses 
)
inlinevirtual

The documentation for this class was generated from the following files: