RigsofRods
Soft-body Physics Simulation
Data Structures | Typedefs | Functions
Collisions

Static & dynamic collision detection system. More...

+ Collaboration diagram for Collisions:

Data Structures

class  CartesianToTriangleTransform
 Defines a linear transformation from cartesian coordinates to local (barycentric) coordinates of a specified triangle. More...
 
struct  RoR::eventsource_t
 < Scripting More...
 
struct  RoR::collision_tri_t
 
struct  RoR::collision_mesh_t
 Records which collision triangles belong to which mesh. More...
 
class  RoR::Collisions
 
class  RoR::PointColDetector
 
class  Triangle
 Represents a triangle in three-dimensional space. More...
 
struct  RoR::collision_box_t
 
struct  RoR::ground_model_t
 Surface friction properties. More...
 

Typedefs

typedef std::vector< collision_tri_tRoR::CollisionTriVec
 
typedef std::vector< collision_mesh_tRoR::CollisionMeshVec
 
typedef std::vector< collision_box_t * > RoR::CollisionBoxPtrVec
 

Functions

Ogre::Vector3 RoR::primitiveCollision (node_t *node, Ogre::Vector3 velocity, float mass, Ogre::Vector3 normal, float dt, ground_model_t *gm, float penetration=0)
 
void RoR::ResolveInterActorCollisions (const float dt, PointColDetector &interPointCD, const int free_collcab, int collcabs[], int cabs[], collcab_rate_t inter_collcabrate[], node_t nodes[], const float collrange, ground_model_t &submesh_ground_model)
 
void RoR::ResolveIntraActorCollisions (const float dt, PointColDetector &intraPointCD, const int free_collcab, int collcabs[], int cabs[], collcab_rate_t intra_collcabrate[], node_t nodes[], const float collrange, ground_model_t &submesh_ground_model)
 

Detailed Description

Static & dynamic collision detection system.

Typedef Documentation

◆ CollisionBoxPtrVec

Definition at line 737 of file SimData.h.

◆ CollisionMeshVec

Definition at line 78 of file Collisions.h.

◆ CollisionTriVec

typedef std::vector<collision_tri_t> RoR::CollisionTriVec

Definition at line 61 of file Collisions.h.

Function Documentation

◆ primitiveCollision()

Vector3 RoR::primitiveCollision ( node_t node,
Ogre::Vector3  velocity,
float  mass,
Ogre::Vector3  normal,
float  dt,
ground_model_t gm,
float  penetration = 0 
)

Definition at line 1229 of file Collisions.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ResolveInterActorCollisions()

void RoR::ResolveInterActorCollisions ( const float  dt,
PointColDetector interPointCD,
const int  free_collcab,
int  collcabs[],
int  cabs[],
collcab_rate_t  inter_collcabrate[],
node_t  nodes[],
const float  collrange,
ground_model_t submesh_ground_model 
)

Definition at line 118 of file DynamicCollisions.cpp.

+ Here is the call graph for this function:

◆ ResolveIntraActorCollisions()

void RoR::ResolveIntraActorCollisions ( const float  dt,
PointColDetector intraPointCD,
const int  free_collcab,
int  collcabs[],
int  cabs[],
collcab_rate_t  intra_collcabrate[],
node_t  nodes[],
const float  collrange,
ground_model_t submesh_ground_model 
)

Definition at line 210 of file DynamicCollisions.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function: