34#include "vehicle2/PxVehicleParams.h"
35#include "vehicle2/PxVehicleComponent.h"
37#include "vehicle2/commands/PxVehicleCommandHelpers.h"
38#include "vehicle2/roadGeometry/PxVehicleRoadGeometryState.h"
39#include "vehicle2/suspension/PxVehicleSuspensionParams.h"
40#include "vehicle2/wheel/PxVehicleWheelParams.h"
42#include "vehicle2/physxRoadGeometry/PxVehiclePhysXRoadGeometryFunctions.h"
43#include "vehicle2/physxRoadGeometry/PxVehiclePhysXRoadGeometryParams.h"
44#include "vehicle2/physxRoadGeometry/PxVehiclePhysXRoadGeometryState.h"
46#include "common/PxProfileZone.h"
90 PX_PROFILE_ZONE(
"PxVehiclePhysXRoadGeometrySceneQueryComponent::update", 0);
103 roadGeomParams, steerResponseStates, rigidBodyState,
104 wheelParams, suspensionParams, materialFrictionParams,
105 roadGeometryStates, physxRoadGeometryStates);
111 for(PxU32 i = 0; i < axleDescription->
nbWheels; i++)
115 PxVehiclePhysXRoadGeometryQueryUpdate(
116 wheelParams[wheelId], suspensionParams[wheelId],
117 *roadGeomParams, materialFrictionParams[wheelId],
118 steerResponseStates[wheelId], *rigidBodyState,
119 *physxContext.physxScene, physxContext.physxUnitCylinderSweepMesh,
context.frame,
120 roadGeometryStates[wheelId],
121 !physxRoadGeometryStates.
isEmpty() ? &physxRoadGeometryStates[wheelId] : NULL);
128 for(PxU32 i = 0; i < axleDescription->
nbWheels; i++)
132 roadGeometryStates[wheelId].setToDefault();
Definition PxVehicleComponent.h:45
Definition PxVehiclePhysXRoadGeometryComponents.h:56
virtual void getDataForPhysXRoadGeometrySceneQueryComponent(const PxVehicleAxleDescription *&axleDescription, const PxVehiclePhysXRoadGeometryQueryParams *&roadGeomParams, PxVehicleArrayData< const PxReal > &steerResponseStates, const PxVehicleRigidBodyState *&rigidBodyState, PxVehicleArrayData< const PxVehicleWheelParams > &wheelParams, PxVehicleArrayData< const PxVehicleSuspensionParams > &suspensionParams, PxVehicleArrayData< const PxVehiclePhysXMaterialFrictionParams > &materialFrictionParams, PxVehicleArrayData< PxVehicleRoadGeometryState > &roadGeometryStates, PxVehicleArrayData< PxVehiclePhysXRoadGeometryQueryState > &physxRoadGeometryStates)=0
Provide vehicle data items for this component.
virtual bool update(const PxReal dt, const PxVehicleSimulationContext &context)
Update function for a vehicle component.
Definition PxVehiclePhysXRoadGeometryComponents.h:86
Sorts an array of objects in ascending order, assuming that the predicate implements the < operator:
Definition PxBoxController.h:39
Helper struct to pass array type data to vehice components and functions.
Definition PxVehicleParams.h:249
PX_FORCE_INLINE bool isEmpty() const
Check if declared as empty.
Definition PxVehicleParams.h:343
Definition PxVehicleParams.h:53
PxU32 wheelIdsInAxleOrder[PxVehicleLimits::eMAX_NB_WHEELS]
The list of all wheel ids on the vehicle.
Definition PxVehicleParams.h:149
PxU32 nbWheels
The number of wheels on the vehicle.
Definition PxVehicleParams.h:150
A description of type of PhysX scene query and the filter data to apply to the query.
Definition PxVehiclePhysXRoadGeometryParams.h:70
Definition PxVehicleParams.h:742
Definition PxVehicleRigidBodyStates.h:47
@ ePHYSX
The simulation context inherits from PxVehiclePhysXSimulationContext.
Definition PxVehicleParams.h:633
Definition PxVehicleParams.h:672