![]()  | 
  
    Jolt Physics
    
   A multi core friendly Game Physics Engine 
   | 
 
Runtime controller class for vehicle with tank tracks. More...
#include <TrackedVehicleController.h>
  
Public Member Functions | |
| JPH_OVERRIDE_NEW_DELETE | TrackedVehicleController (const TrackedVehicleControllerSettings &inSettings, VehicleConstraint &inConstraint) | 
| Constructor.  More... | |
| void | SetDriverInput (float inForward, float inLeftRatio, float inRightRatio, float inBrake) | 
| void | SetForwardInput (float inForward) | 
| Value between -1 and 1 for auto transmission and value between 0 and 1 indicating desired driving direction and amount the gas pedal is pressed.  More... | |
| float | GetForwardInput () const | 
| void | SetLeftRatio (float inLeftRatio) | 
| Value between -1 and 1 indicating an extra multiplier to the rotation rate of the left track (used for steering)  More... | |
| float | GetLeftRatio () const | 
| void | SetRightRatio (float inRightRatio) | 
| Value between -1 and 1 indicating an extra multiplier to the rotation rate of the right track (used for steering)  More... | |
| float | GetRightRatio () const | 
| void | SetBrakeInput (float inBrake) | 
| Value between 0 and 1 indicating how strong the brake pedal is pressed.  More... | |
| float | GetBrakeInput () const | 
| const VehicleEngine & | GetEngine () const | 
| Get current engine state.  More... | |
| VehicleEngine & | GetEngine () | 
| Get current engine state (writable interface, allows you to make changes to the configuration which will take effect the next time step)  More... | |
| const VehicleTransmission & | GetTransmission () const | 
| Get current transmission state.  More... | |
| VehicleTransmission & | GetTransmission () | 
| Get current transmission state (writable interface, allows you to make changes to the configuration which will take effect the next time step)  More... | |
| const VehicleTracks & | GetTracks () const | 
| Get the tracks this vehicle has.  More... | |
| VehicleTracks & | GetTracks () | 
| Get the tracks this vehicle has (writable interface, allows you to make changes to the configuration which will take effect the next time step)  More... | |
| void | SetRPMMeter (Vec3Arg inPosition, float inSize) | 
| Debug drawing of RPM meter.  More... | |
  Public Member Functions inherited from VehicleController | |
| JPH_OVERRIDE_NEW_DELETE | VehicleController (VehicleConstraint &inConstraint) | 
| Constructor / destructor.  More... | |
| virtual | ~VehicleController ()=default | 
  Public Member Functions inherited from RefTarget< VehicleController > | |
| RefTarget ()=default | |
| Constructor.  More... | |
| RefTarget (const RefTarget &) | |
| ~RefTarget () | |
| assert no one is referencing us  More... | |
| void | SetEmbedded () const | 
| RefTarget & | operator= (const RefTarget &) | 
| Assignment operator.  More... | |
| uint32 | GetRefCount () const | 
| Get current refcount of this object.  More... | |
| void | AddRef () const | 
| Add or release a reference to this object.  More... | |
| void | Release () const | 
  Public Member Functions inherited from NonCopyable | |
| NonCopyable ()=default | |
| NonCopyable (const NonCopyable &)=delete | |
| void | operator= (const NonCopyable &)=delete | 
Protected Member Functions | |
| void | SyncLeftRightTracks () | 
| Synchronize angular velocities of left and right tracks according to their ratios.  More... | |
| virtual Wheel * | ConstructWheel (const WheelSettings &inWheel) const override | 
| virtual bool | AllowSleep () const override | 
| virtual void | PreCollide (float inDeltaTime, PhysicsSystem &inPhysicsSystem) override | 
| virtual void | PostCollide (float inDeltaTime, PhysicsSystem &inPhysicsSystem) override | 
| virtual bool | SolveLongitudinalAndLateralConstraints (float inDeltaTime) override | 
| virtual void | SaveState (StateRecorder &inStream) const override | 
| virtual void | RestoreState (StateRecorder &inStream) override | 
| virtual void | Draw (DebugRenderer *inRenderer) const override | 
| virtual Wheel * | ConstructWheel (const WheelSettings &inWheel) const =0 | 
| virtual bool | AllowSleep () const =0 | 
| virtual void | PreCollide (float inDeltaTime, PhysicsSystem &inPhysicsSystem)=0 | 
| virtual void | PostCollide (float inDeltaTime, PhysicsSystem &inPhysicsSystem)=0 | 
| virtual bool | SolveLongitudinalAndLateralConstraints (float inDeltaTime)=0 | 
| virtual void | SaveState (StateRecorder &inStream) const =0 | 
| virtual void | RestoreState (StateRecorder &inStream)=0 | 
| virtual void | Draw (DebugRenderer *inRenderer) const =0 | 
Protected Attributes | |
| float | mForwardInput = 0.0f | 
| Value between -1 and 1 for auto transmission and value between 0 and 1 indicating desired driving direction and amount the gas pedal is pressed.  More... | |
| float | mLeftRatio = 1.0f | 
| Value between -1 and 1 indicating an extra multiplier to the rotation rate of the left track (used for steering)  More... | |
| float | mRightRatio = 1.0f | 
| Value between -1 and 1 indicating an extra multiplier to the rotation rate of the right track (used for steering)  More... | |
| float | mBrakeInput = 0.0f | 
| Value between 0 and 1 indicating how strong the brake pedal is pressed.  More... | |
| VehicleEngine | mEngine | 
| Engine state of the vehicle.  More... | |
| VehicleTransmission | mTransmission | 
| Transmission state of the vehicle.  More... | |
| VehicleTracks | mTracks | 
| Tracks of the vehicle.  More... | |
| Vec3 | mRPMMeterPosition { 0, 1, 0 } | 
| Position (in local space of the body) of the RPM meter when drawing the constraint.  More... | |
| float | mRPMMeterSize = 0.5f | 
| Size of the RPM meter when drawing the constraint.  More... | |
  Protected Attributes inherited from VehicleController | |
| VehicleConstraint & | mConstraint | 
| The vehicle constraint we belong to.  More... | |
  Protected Attributes inherited from RefTarget< VehicleController > | |
| atomic< uint32 > | mRefCount | 
| Current reference count.  More... | |
Additional Inherited Members | |
  Static Public Member Functions inherited from RefTarget< VehicleController > | |
| static int | sInternalGetRefCountOffset () | 
| INTERNAL HELPER FUNCTION USED BY SERIALIZATION.  More... | |
  Static Protected Attributes inherited from RefTarget< VehicleController > | |
| static constexpr uint32 | cEmbedded | 
| A large value that gets added to the refcount to mark the object as embedded.  More... | |
Runtime controller class for vehicle with tank tracks.
| TrackedVehicleController::TrackedVehicleController | ( | const TrackedVehicleControllerSettings & | inSettings, | 
| VehicleConstraint & | inConstraint | ||
| ) | 
Constructor.
      
  | 
  overrideprotectedvirtual | 
Implements VehicleController.
      
  | 
  inlineoverrideprotectedvirtual | 
Implements VehicleController.
      
  | 
  overrideprotectedvirtual | 
Implements VehicleController.
      
  | 
  inline | 
      
  | 
  inline | 
Get current engine state (writable interface, allows you to make changes to the configuration which will take effect the next time step)
      
  | 
  inline | 
Get current engine state.
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
Get the tracks this vehicle has (writable interface, allows you to make changes to the configuration which will take effect the next time step)
      
  | 
  inline | 
Get the tracks this vehicle has.
      
  | 
  inline | 
Get current transmission state (writable interface, allows you to make changes to the configuration which will take effect the next time step)
      
  | 
  inline | 
Get current transmission state.
      
  | 
  overrideprotectedvirtual | 
Implements VehicleController.
      
  | 
  overrideprotectedvirtual | 
Implements VehicleController.
      
  | 
  overrideprotectedvirtual | 
Implements VehicleController.
      
  | 
  overrideprotectedvirtual | 
Implements VehicleController.
      
  | 
  inline | 
Value between 0 and 1 indicating how strong the brake pedal is pressed.
      
  | 
  inline | 
Set input from driver
| inForward | Value between -1 and 1 for auto transmission and value between 0 and 1 indicating desired driving direction and amount the gas pedal is pressed | 
| inLeftRatio | Value between -1 and 1 indicating an extra multiplier to the rotation rate of the left track (used for steering) | 
| inRightRatio | Value between -1 and 1 indicating an extra multiplier to the rotation rate of the right track (used for steering) | 
| inBrake | Value between 0 and 1 indicating how strong the brake pedal is pressed | 
      
  | 
  inline | 
Value between -1 and 1 for auto transmission and value between 0 and 1 indicating desired driving direction and amount the gas pedal is pressed.
      
  | 
  inline | 
Value between -1 and 1 indicating an extra multiplier to the rotation rate of the left track (used for steering)
      
  | 
  inline | 
Value between -1 and 1 indicating an extra multiplier to the rotation rate of the right track (used for steering)
      
  | 
  inline | 
Debug drawing of RPM meter.
      
  | 
  overrideprotectedvirtual | 
Implements VehicleController.
      
  | 
  protected | 
Synchronize angular velocities of left and right tracks according to their ratios.
      
  | 
  protected | 
Value between 0 and 1 indicating how strong the brake pedal is pressed.
      
  | 
  protected | 
Engine state of the vehicle.
      
  | 
  protected | 
Value between -1 and 1 for auto transmission and value between 0 and 1 indicating desired driving direction and amount the gas pedal is pressed.
      
  | 
  protected | 
Value between -1 and 1 indicating an extra multiplier to the rotation rate of the left track (used for steering)
      
  | 
  protected | 
Value between -1 and 1 indicating an extra multiplier to the rotation rate of the right track (used for steering)
      
  | 
  protected | 
Position (in local space of the body) of the RPM meter when drawing the constraint.
      
  | 
  protected | 
Size of the RPM meter when drawing the constraint.
      
  | 
  protected | 
Tracks of the vehicle.
      
  | 
  protected | 
Transmission state of the vehicle.