i6engine  1.0
Physics
Collaboration diagram for Physics:

Namespaces

 i6e
 
 i6e::api
 
 i6e::api::physics
 
 i6e::math
 
 i6e::modules
 

Classes

struct  i6e::api::physics::Physics_Collision_Update
 sends update of collision flags vom PhysicalStateComponent to PhysicsNode More...
 
struct  i6e::api::physics::Physics_Gravity_Update
 sends update for world gravity More...
 
struct  i6e::api::physics::Physics_Node_Create
 message for creation of new PhysicsNode More...
 
struct  i6e::api::physics::Physics_Node_Update
 message for creation of new PhysicsNode More...
 
struct  i6e::api::physics::Physics_NodePosition_Update
 message for update of PhysicsNode position More...
 
struct  i6e::api::physics::Physics_LinearVelocity_Update
 sets the linear velocity of a PhysicsNode More...
 
struct  i6e::api::physics::Physics_Force_Update
 
struct  i6e::api::physics::Physics_Comp_Update
 sends message to PhysicalStateComponent with updates of velocity and impulse More...
 
struct  i6e::api::physics::Physics_ApplyRotation_Update
 applies new rotation to PhysicsNode More...
 
struct  i6e::api::physics::Physics_Reset_Update
 removes all powers from a PhysicsNode More...
 
struct  i6e::api::physics::Physics_NodeGravity_Update
 sets the gravity for the given object This overrides the default gravity, thus (0, 0, 0) will result in no gravity at all More...
 
struct  i6e::api::physics::Physics_Node_Delete
 message for deletion of new PhysicsNode More...
 
struct  i6e::api::physics::Physics_RayTest_Update
 message for raytest More...
 
struct  i6e::api::physics::Physics_RayTestNotify_Update
 message for raytest feedback More...
 
struct  i6e::api::physics::Physics_Pause_Update
 pauses the subsystem never send through network More...
 
struct  i6e::api::physics::Physics_AddPosition_Update
 message for addition of object position (cumulative) More...
 
struct  i6e::api::physics::Physics_P2PConstraint_Create
 message for creation of Point2PointConstraint between two PhysicsNodes More...
 
struct  i6e::api::physics::Physics_BreakConstraintImpulse_Update
 message for setting breaking impulse for Constraint between two PhysicsNodes More...
 
struct  i6e::api::physics::Physics_Constraint_Delete
 message for deletion of a Constraint between two PhysicsNodes More...
 
struct  i6e::api::physics::Physics_VelocityComponent_Create
 message for creation of a VelocityComponent in Physics More...
 
struct  i6e::api::physics::Physics_VelocityComponent_Delete
 message for deletion of a VelocityComponent in Physics More...
 
struct  i6e::api::physics::Physics_Accelerate_Update
 message for acceleration of VelocityComponent More...
 
struct  i6e::api::physics::Physics_Decelerate_Update
 message for deceleration of VelocityComponent More...
 
struct  i6e::api::physics::Physics_StopAcceleration_Update
 message for stopping acceleration of VelocityComponent More...
 
struct  i6e::api::physics::Physics_SetMaxSpeed_Update
 message for setting maxSpeed of a VelocityComponent More...
 
struct  i6e::api::physics::Physics_SetResistanceCoefficient_Update
 message for creation of a VelocityComponent in Physics More...
 
struct  i6e::api::physics::Physics_SetWindage_Update
 message for creation of a VelocityComponent in Physics More...
 
class  i6e::api::PhysicsFacade
 Physics specific functions for the game which targets the whole world - not a single object. More...
 
struct  i6e::modules::CollisionShapeData
 
struct  i6e::modules::HeightmapCollisionShapeData
 
struct  i6e::modules::MeshStriderCollisionShapeData
 
class  i6e::modules::DebugDrawer
 
class  i6e::modules::PhysicsController
 Controls the physics world. More...
 
class  i6e::modules::PhysicsMailbox
 Handles the incoming messages on the physic channel and calls the corresponding methods. More...
 
class  i6e::modules::PhysicsManager
 
struct  i6e::modules::PeriodicRaytest
 contains informations for periodic raytests More...
 
class  i6e::modules::PhysicsNode
 Represents the physical state of an object simulated by the Bullet library. Contains the btTransform and a pointer to the associated rigidBody. More...
 
class  i6e::modules::PhysicsVelocityComponent
 Handles calculation of air friction. More...
 

Enumerations

enum  i6e::api::physics::PhysicsMessageTypes {
  i6e::api::physics::PhyReset, i6e::api::physics::PhyCollision, i6e::api::physics::PhyGravity, i6e::api::physics::PhyNode,
  i6e::api::physics::PhyNodeGravity, i6e::api::physics::PhyNodePosition, i6e::api::physics::PhyLinearVelocity, i6e::api::physics::PhyForce,
  i6e::api::physics::PhyVelForce, i6e::api::physics::PhyApplyRotation, i6e::api::physics::PhyResetForces, i6e::api::physics::PhyRayTest,
  i6e::api::physics::PhyRayTestResult, i6e::api::physics::PhyPause, i6e::api::physics::PhyAddPosition, i6e::api::physics::PhyP2PConstraint,
  i6e::api::physics::PhyConstraint, i6e::api::physics::PhyConstraintBreakImpulse, i6e::api::physics::PhyVelocityComponent, i6e::api::physics::PhyAccelerate,
  i6e::api::physics::PhyDecelerate, i6e::api::physics::PhyMaxSpeed, i6e::api::physics::PhyResistanceCoefficient, i6e::api::physics::PhyWindage,
  i6e::api::physics::PhyStopAcceleration
}
 
enum  i6e::modules::CollisionShapeType { i6e::modules::CollisionShapeType::None, i6e::modules::CollisionShapeType::Heightmap, i6e::modules::CollisionShapeType::MeshStrider }
 

Detailed Description

Explanation of bullet rigid body parameters

name type values (forced) values (reasonable) Explanation
linearDamping double 0 - 1 0 - 1 Speed will slowly decrease by factor (1 - x) ^ timeStep; also threshold for additional damping
angularDamping double 0 - 1 0 - 1 Rotation will slowly decrease by factor (1 - x) ^ timeStep; also theshold for additional damping
additionalDamping bool T / F T / F Toggles additional dampings on for slow objects
additionalDampingFactor double * 0 - 1 fixed factor to slow down speed AND rotation if Threshold is not exceeded
additionalAngularDampingThresholdSqr double * > 0 Angular threshold to trigger additional damping
additionalLinearDampingThresholdSqr double * > 0 Linear threshold to trigger additional damping
linearFactor double * > 0 all linear forces applied will be scaled by this value
angularFactor double * > 0 all angular forces applied will be scaled by this value

All italic parameters are not yet available within the engine If additional damping is turned on, slow objects will slow down even more First, additionalDumpingFactor is used, if BOTH additional dumping thresholds are triggered Second, if the speed is slower than linearDamping, it will slow down by fixed value 0.005 Analogous for angular speed

Enumeration Type Documentation

Enumerator
None 
Heightmap 
MeshStrider 

Definition at line 37 of file CollisionShape.h.

Enumerator
PhyReset 
PhyCollision 
PhyGravity 
PhyNode 
PhyNodeGravity 
PhyNodePosition 
PhyLinearVelocity 
PhyForce 
PhyVelForce 
PhyApplyRotation 
PhyResetForces 
PhyRayTest 
PhyRayTestResult 
PhyPause 
PhyAddPosition 
PhyP2PConstraint 
PhyConstraint 
PhyConstraintBreakImpulse 
PhyVelocityComponent 
PhyAccelerate 
PhyDecelerate 
PhyMaxSpeed 
PhyResistanceCoefficient 
PhyWindage 
PhyStopAcceleration 

Definition at line 36 of file PhysicsConfig.h.