Jolt Physics
A multi core friendly Game Physics Engine
Loading...
Searching...
No Matches
CharacterVirtual::Contact Struct Reference

#include <CharacterVirtual.h>

Public Member Functions

void SaveState (StateRecorder &inStream) const
 
void RestoreState (StateRecorder &inStream)
 
bool IsSameBody (const Contact &inOther) const
 

Public Attributes

RVec3 mPosition
 Position where the character makes contact.
 
Vec3 mLinearVelocity
 Velocity of the contact point.
 
Vec3 mContactNormal
 Contact normal, pointing towards the character.
 
Vec3 mSurfaceNormal
 Surface normal of the contact.
 
float mDistance
 Distance to the contact <= 0 means that it is an actual contact, > 0 means predictive.
 
float mFraction
 Fraction along the path where this contact takes place.
 
BodyID mBodyB
 ID of body we're colliding with (if not invalid)
 
CharacterVirtualmCharacterB = nullptr
 Character we're colliding with (if not null)
 
SubShapeID mSubShapeIDB
 Sub shape ID of body we're colliding with.
 
EMotionType mMotionTypeB
 Motion type of B, used to determine the priority of the contact.
 
bool mIsSensorB
 If B is a sensor.
 
uint64 mUserData
 User data of B.
 
const PhysicsMaterialmMaterial
 Material of B.
 
bool mHadCollision = false
 If the character actually collided with the contact (can be false if a predictive contact never becomes a real one)
 
bool mWasDiscarded = false
 If the contact validate callback chose to discard this contact.
 
bool mCanPushCharacter = true
 When true, the velocity of the contact point can push the character.
 

Member Function Documentation

◆ IsSameBody()

bool CharacterVirtual::Contact::IsSameBody ( const Contact inOther) const
inline

◆ RestoreState()

void CharacterVirtual::Contact::RestoreState ( StateRecorder inStream)

◆ SaveState()

void CharacterVirtual::Contact::SaveState ( StateRecorder inStream) const

Member Data Documentation

◆ mBodyB

BodyID CharacterVirtual::Contact::mBodyB

ID of body we're colliding with (if not invalid)

◆ mCanPushCharacter

bool CharacterVirtual::Contact::mCanPushCharacter = true

When true, the velocity of the contact point can push the character.

◆ mCharacterB

CharacterVirtual* CharacterVirtual::Contact::mCharacterB = nullptr

Character we're colliding with (if not null)

◆ mContactNormal

Vec3 CharacterVirtual::Contact::mContactNormal

Contact normal, pointing towards the character.

◆ mDistance

float CharacterVirtual::Contact::mDistance

Distance to the contact <= 0 means that it is an actual contact, > 0 means predictive.

◆ mFraction

float CharacterVirtual::Contact::mFraction

Fraction along the path where this contact takes place.

◆ mHadCollision

bool CharacterVirtual::Contact::mHadCollision = false

If the character actually collided with the contact (can be false if a predictive contact never becomes a real one)

◆ mIsSensorB

bool CharacterVirtual::Contact::mIsSensorB

If B is a sensor.

◆ mLinearVelocity

Vec3 CharacterVirtual::Contact::mLinearVelocity

Velocity of the contact point.

◆ mMaterial

const PhysicsMaterial* CharacterVirtual::Contact::mMaterial

Material of B.

◆ mMotionTypeB

EMotionType CharacterVirtual::Contact::mMotionTypeB

Motion type of B, used to determine the priority of the contact.

◆ mPosition

RVec3 CharacterVirtual::Contact::mPosition

Position where the character makes contact.

◆ mSubShapeIDB

SubShapeID CharacterVirtual::Contact::mSubShapeIDB

Sub shape ID of body we're colliding with.

◆ mSurfaceNormal

Vec3 CharacterVirtual::Contact::mSurfaceNormal

Surface normal of the contact.

◆ mUserData

uint64 CharacterVirtual::Contact::mUserData

User data of B.

◆ mWasDiscarded

bool CharacterVirtual::Contact::mWasDiscarded = false

If the contact validate callback chose to discard this contact.


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